From d954dc8b71655d48717f6b5e5161cc0993b678e6 Mon Sep 17 00:00:00 2001 From: wang Date: Wed, 15 Jul 2026 14:19:37 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=87=E6=8D=A2oss?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/application-external.yml | 49 +- logs/app.log | 2198 +++++++++++++++++ .../config/FileUploadConfig.java | 16 - .../controller/VoiceBoxController.java | 5 - .../dataserviceyy/entity/OssFileResponse.java | 83 + .../dataserviceyy/entity/ResultEntity.java | 4 +- .../dataserviceyy/service/VaaSyncService.java | 23 +- .../dataserviceyy/util/FileUploadUtil.java | 290 --- .../dataserviceyy/util/OssFileService.java | 164 ++ .../dataserviceyy/util/fileUtil.java | 72 - src/main/resources/application.yml | 2 +- 11 files changed, 2490 insertions(+), 416 deletions(-) delete mode 100644 src/main/java/com/threecloud/dataserviceyy/config/FileUploadConfig.java create mode 100644 src/main/java/com/threecloud/dataserviceyy/entity/OssFileResponse.java delete mode 100644 src/main/java/com/threecloud/dataserviceyy/util/FileUploadUtil.java create mode 100644 src/main/java/com/threecloud/dataserviceyy/util/OssFileService.java delete mode 100644 src/main/java/com/threecloud/dataserviceyy/util/fileUtil.java diff --git a/config/application-external.yml b/config/application-external.yml index 243c6cc..5de7d2e 100644 --- a/config/application-external.yml +++ b/config/application-external.yml @@ -16,32 +16,47 @@ spring: username: dcms_dev password: your_password_here -# ==================== 语音同步配置 ==================== -vaa-sync: - # 本地录音文件存储路径 - download-path: ./vaa-recordings +# ==================== FTP同步配置 ==================== +ftp-sync: + # 临时文件存储路径 + temp-path: ./vaa-ftp-temp - # 本地文件保留天数 + # 临时文件保留天数 retain-days: 10 - # 同步定时任务 Cron 表达式 - # 每2小时: 0 0 0/2 * * ? - # 每30分钟: 0 0/30 * * * ? - # 每分钟(测试): 0 0/1 * * * ? - sync-interval-cron: "0 0 0/2 * * ?" + # txt文件编码 + txt-encoding: GBK - # OSS 文件上传配置 - oss: - base-url: http://127.0.0.1:9090 - upload-url: http://127.0.0.1:9090/apiOss/oss/fileUpload - appcode: dataservice-yy - appid: your_appid_here - appsecret: your_appsecret_here + # 字段分隔符 + field-separator: "※" + + # 地市配置(单地市部署,只配当前地市) + cities: + - city-code: "340100" + city-name: "huainan" + ftp-host: 10.126.129.7 + ftp-port: 9979 + ftp-username: yyfile + ftp-password: yyfile + ftp-source-dir: /voice_record/ + ftp-record-dir: /rec/ + ftp-archive-dir: /processed/ + phone-area-code: "0000" # ==================== 服务端口 ==================== server: port: 8088 +# ==================== OSS文件存储服务 ==================== +oss: + base-url: http://53.1.211.7/apiOss + upload-path: voice/record/ + +# ==================== VAA同步配置 ==================== +vaa-sync: + download-path: ./vaa-recordings + retain-days: 10 + # ==================== 日志配置 ==================== logging: file: diff --git a/logs/app.log b/logs/app.log index 9da34a8..b114bb0 100644 --- a/logs/app.log +++ b/logs/app.log @@ -74,3 +74,2201 @@ 2026-05-26 16:40:32.780 [main] DEBUG c.t.dataserviceyy.util.VaaHttpUtil - 正在登录录音盒: http://10.127.89.93/authorize?username=admin&password=admin 2026-05-26 16:40:33.777 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... 2026-05-26 16:40:33.778 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2026-06-29 14:38:14.223 [main] INFO c.t.d.DataserviceYyApplication - Starting DataserviceYyApplication using Java 1.8.0_492 on MswangdeMacBook-Air.local with PID 54137 (/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes started by wang in /Users/wang/sanduoyun/developspace/dataservice-yy) +2026-06-29 14:38:14.224 [main] DEBUG c.t.d.DataserviceYyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2026-06-29 14:38:14.224 [main] INFO c.t.d.DataserviceYyApplication - No active profile set, falling back to 1 default profile: "default" +2026-06-29 14:38:14.759 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2026-06-29 14:38:14.759 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2026-06-29 14:38:14.813 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2026-06-29 14:38:15.084 [main] INFO c.t.d.util.FileUploadUtil - 文件上传工具初始化完成 +2026-06-29 14:38:15.085 [main] INFO c.t.d.util.FileUploadUtil - OSS基础地址: https://8.148.25.165/apiOss +2026-06-29 14:38:15.085 [main] INFO c.t.d.util.FileUploadUtil - 上传接口: https://8.148.25.165/apiOss/oss/fileUpload +2026-06-29 14:38:15.371 [main] INFO c.t.d.DataserviceYyApplication - Started DataserviceYyApplication in 1.356 seconds (JVM running for 1.839) +2026-06-29 14:38:15.372 [main] DEBUG c.t.dataserviceyy.util.FileCleaner - 基础目录不存在或不是目录: ./vaa-recordings +2026-06-29 14:38:15.387 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2026-06-29 14:38:15.393 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2026-06-29 14:38:45.418 [main] ERROR c.t.d.service.VaaSyncService - 【异常】同步任务执行失败: nested exception is org.apache.ibatis.exceptions.PersistenceException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30009ms. +### The error may exist in file [/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes/mapper/VoiceSyncMapper.xml] +### The error may involve com.threecloud.dataserviceyy.mapper.VoiceSyncMapper.getAllYysb +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30009ms. +org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30009ms. +### The error may exist in file [/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes/mapper/VoiceSyncMapper.xml] +### The error may involve com.threecloud.dataserviceyy.mapper.VoiceSyncMapper.getAllYysb +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30009ms. + at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:96) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:441) + at com.sun.proxy.$Proxy60.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) + at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:147) + at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:80) + at org.apache.ibatis.binding.MapperProxy$PlainMethodInvoker.invoke(MapperProxy.java:145) + at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:86) + at com.sun.proxy.$Proxy61.getAllYysb(Unknown Source) + at com.threecloud.dataserviceyy.service.VaaSyncService.executeSync(VaaSyncService.java:74) + at com.threecloud.dataserviceyy.DataserviceYyApplication.lambda$startupRunner$0(DataserviceYyApplication.java:34) + at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:782) + at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:766) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:314) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) + at com.threecloud.dataserviceyy.DataserviceYyApplication.main(DataserviceYyApplication.java:24) +Caused by: org.apache.ibatis.exceptions.PersistenceException: +### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30009ms. +### The error may exist in file [/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes/mapper/VoiceSyncMapper.xml] +### The error may involve com.threecloud.dataserviceyy.mapper.VoiceSyncMapper.getAllYysb +### The error occurred while executing a query +### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30009ms. + at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:153) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) + ... 15 common frames omitted +Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30009ms. + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:83) + at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:80) + at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:67) + at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:337) + at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:86) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109) + at com.github.pagehelper.PageInterceptor.intercept(PageInterceptor.java:151) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at com.sun.proxy.$Proxy79.query(Unknown Source) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151) + ... 22 common frames omitted +Caused by: java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30009ms. + at com.zaxxer.hikari.pool.HikariPool.createTimeoutException(HikariPool.java:696) + at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:197) + at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:162) + at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:128) + at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:159) + at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:117) + at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80) + ... 34 common frames omitted +Caused by: com.kingbase8.util.KSQLException: Connection to 127.0.0.1:54321 refused. Check that the _hostname and port are correct and that the postmaster is accepting TCP/IP _connections. + at com.kingbase8.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:381) + at com.kingbase8.core.ConnectionFactory.openConnection(ConnectionFactory.java:65) + at com.kingbase8.jdbc.KbConnection.(KbConnection.java:336) + at com.kingbase8.jdbc.KbConnection.(KbConnection.java:548) + at com.kingbase8.Driver.makeConnection(Driver.java:576) + at com.kingbase8.Driver.connect(Driver.java:304) + at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) + at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364) + at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) + at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) + at com.zaxxer.hikari.pool.HikariPool.access$100(HikariPool.java:71) + at com.zaxxer.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:726) + at com.zaxxer.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:712) + at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266) + at java.util.concurrent.FutureTask.run(FutureTask.java) + at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) + at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) + at java.lang.Thread.run(Thread.java:750) +Caused by: java.net.ConnectException: Connection refused (Connection refused) + at java.net.PlainSocketImpl.socketConnect(Native Method) + at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) + at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) + at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) + at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) + at java.net.Socket.connect(Socket.java:607) + at com.kingbase8.core.KBStream.(KBStream.java:147) + at com.kingbase8.core.v3.ConnectionFactoryImpl.tryConnect(ConnectionFactoryImpl.java:144) + at com.kingbase8.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:280) + ... 17 common frames omitted +2026-06-29 14:39:50.129 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2026-06-29 14:39:50.130 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2026-06-29 14:39:51.571 [main] INFO c.t.d.DataserviceYyApplication - Starting DataserviceYyApplication using Java 1.8.0_492 on MswangdeMacBook-Air.local with PID 54306 (/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes started by wang in /Users/wang/sanduoyun/developspace/dataservice-yy) +2026-06-29 14:39:51.573 [main] DEBUG c.t.d.DataserviceYyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2026-06-29 14:39:51.573 [main] INFO c.t.d.DataserviceYyApplication - No active profile set, falling back to 1 default profile: "default" +2026-06-29 14:39:52.072 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2026-06-29 14:39:52.072 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2026-06-29 14:39:52.117 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2026-06-29 14:39:52.382 [main] INFO c.t.d.util.FileUploadUtil - 文件上传工具初始化完成 +2026-06-29 14:39:52.382 [main] INFO c.t.d.util.FileUploadUtil - OSS基础地址: https://8.148.25.165/apiOss +2026-06-29 14:39:52.383 [main] INFO c.t.d.util.FileUploadUtil - 上传接口: https://8.148.25.165/apiOss/oss/fileUpload +2026-06-29 14:39:52.661 [main] INFO c.t.d.DataserviceYyApplication - Started DataserviceYyApplication in 1.374 seconds (JVM running for 1.834) +2026-06-29 14:39:52.663 [main] DEBUG c.t.dataserviceyy.util.FileCleaner - 基础目录不存在或不是目录: ./vaa-recordings +2026-06-29 14:39:52.679 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2026-06-29 14:39:52.685 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2026-06-29 14:39:53.413 [main] ERROR c.t.d.service.VaaSyncService - 【异常】同步任务执行失败: +### Error querying database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +### The error may exist in file [/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes/mapper/VoiceSyncMapper.xml] +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id AS ID, device_no AS UUID, city_name AS ORGAN_NAME, city_code AS ORGAN_ID, ip_address AS IP, device_port AS PORT, org_code AS ORG_CODE, username AS USERNAME, password AS PASSWORD FROM mid_voice.mid_voice_device_config WHERE device_status = '1' +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +### The error may exist in file [/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes/mapper/VoiceSyncMapper.xml] +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id AS ID, device_no AS UUID, city_name AS ORGAN_NAME, city_code AS ORGAN_ID, ip_address AS IP, device_port AS PORT, org_code AS ORG_CODE, username AS USERNAME, password AS PASSWORD FROM mid_voice.mid_voice_device_config WHERE device_status = '1' +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 + at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:101) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:70) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) + at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:91) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:441) + at com.sun.proxy.$Proxy60.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) + at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:147) + at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:80) + at org.apache.ibatis.binding.MapperProxy$PlainMethodInvoker.invoke(MapperProxy.java:145) + at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:86) + at com.sun.proxy.$Proxy61.getAllYysb(Unknown Source) + at com.threecloud.dataserviceyy.service.VaaSyncService.executeSync(VaaSyncService.java:74) + at com.threecloud.dataserviceyy.DataserviceYyApplication.lambda$startupRunner$0(DataserviceYyApplication.java:34) + at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:782) + at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:766) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:314) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) + at com.threecloud.dataserviceyy.DataserviceYyApplication.main(DataserviceYyApplication.java:24) +Caused by: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 + at com.kingbase8.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:3551) + at com.kingbase8.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2993) + at com.kingbase8.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:405) + at com.kingbase8.jdbc.KbStatement.executeInternal_(KbStatement.java:784) + at com.kingbase8.jdbc.KbStatement.execute(KbStatement.java:676) + at com.kingbase8.jdbc.KbPreparedStatement.executeWithFlags(KbPreparedStatement.java:286) + at com.kingbase8.jdbc.KbPreparedStatement.execute(KbPreparedStatement.java:265) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59) + at com.sun.proxy.$Proxy81.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109) + at com.github.pagehelper.PageInterceptor.intercept(PageInterceptor.java:151) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at com.sun.proxy.$Proxy79.query(Unknown Source) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) + ... 15 common frames omitted +2026-06-29 14:41:54.571 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2026-06-29 14:41:54.574 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2026-06-29 14:41:58.796 [main] INFO c.t.d.DataserviceYyApplication - Starting DataserviceYyApplication using Java 1.8.0_492 on MswangdeMacBook-Air.local with PID 54465 (/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes started by wang in /Users/wang/sanduoyun/developspace/dataservice-yy) +2026-06-29 14:41:58.797 [main] DEBUG c.t.d.DataserviceYyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2026-06-29 14:41:58.798 [main] INFO c.t.d.DataserviceYyApplication - No active profile set, falling back to 1 default profile: "default" +2026-06-29 14:41:59.296 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2026-06-29 14:41:59.296 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2026-06-29 14:41:59.344 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2026-06-29 14:41:59.614 [main] INFO c.t.d.util.FileUploadUtil - 文件上传工具初始化完成 +2026-06-29 14:41:59.614 [main] INFO c.t.d.util.FileUploadUtil - OSS基础地址: https://8.148.25.165/apiOss +2026-06-29 14:41:59.615 [main] INFO c.t.d.util.FileUploadUtil - 上传接口: https://8.148.25.165/apiOss/oss/fileUpload +2026-06-29 14:41:59.883 [main] INFO c.t.d.DataserviceYyApplication - Started DataserviceYyApplication in 1.276 seconds (JVM running for 1.718) +2026-06-29 14:41:59.884 [main] DEBUG c.t.dataserviceyy.util.FileCleaner - 基础目录不存在或不是目录: ./vaa-recordings +2026-06-29 14:41:59.900 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2026-06-29 14:41:59.907 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2026-06-29 14:42:00.651 [main] ERROR c.t.d.service.VaaSyncService - 【异常】同步任务执行失败: +### Error querying database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +### The error may exist in file [/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes/mapper/VoiceSyncMapper.xml] +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id AS ID, device_no AS UUID, city_name AS ORGAN_NAME, city_code AS ORGAN_ID, ip_address AS IP, device_port AS PORT, org_code AS ORG_CODE, username AS USERNAME, password AS PASSWORD FROM mid_voice.mid_voice_device_config WHERE device_status = '1' +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +org.springframework.jdbc.BadSqlGrammarException: +### Error querying database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +### The error may exist in file [/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes/mapper/VoiceSyncMapper.xml] +### The error may involve defaultParameterMap +### The error occurred while setting parameters +### SQL: SELECT id AS ID, device_no AS UUID, city_name AS ORGAN_NAME, city_code AS ORGAN_ID, ip_address AS IP, device_port AS PORT, org_code AS ORG_CODE, username AS USERNAME, password AS PASSWORD FROM mid_voice.mid_voice_device_config WHERE device_status = '1' +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 + at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:101) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:70) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) + at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:79) + at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:91) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:441) + at com.sun.proxy.$Proxy60.selectList(Unknown Source) + at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:224) + at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:147) + at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:80) + at org.apache.ibatis.binding.MapperProxy$PlainMethodInvoker.invoke(MapperProxy.java:145) + at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:86) + at com.sun.proxy.$Proxy61.getAllYysb(Unknown Source) + at com.threecloud.dataserviceyy.service.VaaSyncService.executeSync(VaaSyncService.java:74) + at com.threecloud.dataserviceyy.DataserviceYyApplication.lambda$startupRunner$0(DataserviceYyApplication.java:34) + at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:782) + at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:766) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:314) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1317) + at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) + at com.threecloud.dataserviceyy.DataserviceYyApplication.main(DataserviceYyApplication.java:24) +Caused by: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice.mid_voice_device_config" does not exist + Position: 322 At Line: 10, Line Position: 14 + at com.kingbase8.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:3551) + at com.kingbase8.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2993) + at com.kingbase8.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:405) + at com.kingbase8.jdbc.KbStatement.executeInternal_(KbStatement.java:784) + at com.kingbase8.jdbc.KbStatement.execute(KbStatement.java:676) + at com.kingbase8.jdbc.KbPreparedStatement.executeWithFlags(KbPreparedStatement.java:286) + at com.kingbase8.jdbc.KbPreparedStatement.execute(KbPreparedStatement.java:265) + at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44) + at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:59) + at com.sun.proxy.$Proxy81.execute(Unknown Source) + at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) + at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) + at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63) + at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:325) + at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) + at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109) + at com.github.pagehelper.PageInterceptor.intercept(PageInterceptor.java:151) + at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62) + at com.sun.proxy.$Proxy79.query(Unknown Source) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145) + at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427) + ... 15 common frames omitted +2026-06-29 14:43:07.051 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2026-06-29 14:43:07.054 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2026-06-29 14:43:08.903 [main] INFO c.t.d.DataserviceYyApplication - Starting DataserviceYyApplication using Java 1.8.0_492 on MswangdeMacBook-Air.local with PID 54544 (/Users/wang/sanduoyun/developspace/dataservice-yy/target/classes started by wang in /Users/wang/sanduoyun/developspace/dataservice-yy) +2026-06-29 14:43:08.904 [main] DEBUG c.t.d.DataserviceYyApplication - Running with Spring Boot v2.6.13, Spring v5.3.23 +2026-06-29 14:43:08.904 [main] INFO c.t.d.DataserviceYyApplication - No active profile set, falling back to 1 default profile: "default" +2026-06-29 14:43:09.395 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2026-06-29 14:43:09.395 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.68] +2026-06-29 14:43:09.438 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2026-06-29 14:43:09.689 [main] INFO c.t.d.util.FileUploadUtil - 文件上传工具初始化完成 +2026-06-29 14:43:09.689 [main] INFO c.t.d.util.FileUploadUtil - OSS基础地址: https://8.148.25.165/apiOss +2026-06-29 14:43:09.690 [main] INFO c.t.d.util.FileUploadUtil - 上传接口: https://8.148.25.165/apiOss/oss/fileUpload +2026-06-29 14:43:09.989 [main] INFO c.t.d.DataserviceYyApplication - Started DataserviceYyApplication in 1.338 seconds (JVM running for 1.888) +2026-06-29 14:43:09.991 [main] DEBUG c.t.dataserviceyy.util.FileCleaner - 基础目录不存在或不是目录: ./vaa-recordings +2026-06-29 14:43:10.006 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2026-06-29 14:43:10.012 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2026-06-29 14:43:10.760 [main] INFO c.t.d.service.VaaSyncService - 【主流程】查询到 31 个在线语音设备 +2026-06-29 14:43:10.761 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=239, 编号=340100_135926, 机构=合肥市, IP=112.25.31.145:8082 +2026-06-29 14:43:10.761 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=239 +2026-06-29 14:43:10.840 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:10.840 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=263, 编号=340100_351972, 机构=合肥市, IP=112.25.35.66:8082 +2026-06-29 14:43:10.840 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=263 +2026-06-29 14:43:10.893 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:10.893 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=233, 编号=340100_263591, 机构=合肥市, IP=112.25.30.122:8080 +2026-06-29 14:43:10.893 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=233 +2026-06-29 14:43:10.941 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:10.941 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=245, 编号=340100_592361, 机构=合肥市, IP=112.25.32.109:8080 +2026-06-29 14:43:10.941 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=245 +2026-06-29 14:43:10.980 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:10.980 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=251, 编号=340100_693257, 机构=合肥市, IP=112.25.33.78:8081 +2026-06-29 14:43:10.981 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=251 +2026-06-29 14:43:11.027 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.027 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=257, 编号=340100_715923, 机构=合肥市, IP=112.25.34.131:8080 +2026-06-29 14:43:11.027 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=257 +2026-06-29 14:43:11.074 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.074 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=269, 编号=340100_832691, 机构=合肥市, IP=112.25.36.97:8080 +2026-06-29 14:43:11.074 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=269 +2026-06-29 14:43:11.114 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.114 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=275, 编号=340100_582391, 机构=合肥市, IP=112.25.37.126:8081 +2026-06-29 14:43:11.114 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=275 +2026-06-29 14:43:11.155 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.155 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=281, 编号=340100_925136, 机构=合肥市, IP=112.25.38.53:8080 +2026-06-29 14:43:11.155 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=281 +2026-06-29 14:43:11.205 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.205 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=287, 编号=340100_135926, 机构=合肥市, IP=112.25.39.104:8082 +2026-06-29 14:43:11.205 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=287 +2026-06-29 14:43:11.252 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.252 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=249, 编号=340800_726395, 机构=安庆市, IP=116.22.54.156:8080 +2026-06-29 14:43:11.252 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=249 +2026-06-29 14:43:11.294 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.294 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=291, 编号=340800_259136, 机构=安庆市, IP=116.22.61.84:8081 +2026-06-29 14:43:11.295 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=291 +2026-06-29 14:43:11.341 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.341 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=237, 编号=340800_726359, 机构=安庆市, IP=116.22.52.133:8080 +2026-06-29 14:43:11.341 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=237 +2026-06-29 14:43:11.384 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.384 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=243, 编号=340800_263597, 机构=安庆市, IP=116.22.53.89:8081 +2026-06-29 14:43:11.384 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=243 +2026-06-29 14:43:11.436 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.436 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=255, 编号=340800_351972, 机构=安庆市, IP=116.22.55.63:8082 +2026-06-29 14:43:11.436 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=255 +2026-06-29 14:43:11.486 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.486 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=261, 编号=340800_395162, 机构=安庆市, IP=116.22.56.105:8080 +2026-06-29 14:43:11.486 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=261 +2026-06-29 14:43:11.534 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.535 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=267, 编号=340800_592361, 机构=安庆市, IP=116.22.57.149:8081 +2026-06-29 14:43:11.535 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=267 +2026-06-29 14:43:11.586 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.587 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=279, 编号=340800_832691, 机构=安庆市, IP=116.22.59.118:8082 +2026-06-29 14:43:11.587 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=279 +2026-06-29 14:43:11.634 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.634 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=285, 编号=340800_582391, 机构=安庆市, IP=116.22.60.132:8080 +2026-06-29 14:43:11.634 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=285 +2026-06-29 14:43:11.684 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.684 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=270, 编号=341200_395162, 机构=阜阳市, IP=53.162.216.71:80 +2026-06-29 14:43:11.684 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=270 +2026-06-29 14:43:11.727 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.728 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=234, 编号=341200_361592, 机构=阜阳市, IP=53.162.212.136:80 +2026-06-29 14:43:11.728 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=234 +2026-06-29 14:43:11.769 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.769 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=240, 编号=341200_582391, 机构=阜阳市, IP=53.162.211.98:80 +2026-06-29 14:43:11.769 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=240 +2026-06-29 14:43:11.815 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.815 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=252, 编号=341200_135926, 机构=阜阳市, IP=53.162.213.45:80 +2026-06-29 14:43:11.815 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=252 +2026-06-29 14:43:11.864 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.864 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=258, 编号=341200_592631, 机构=阜阳市, IP=53.162.214.89:80 +2026-06-29 14:43:11.864 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=258 +2026-06-29 14:43:11.909 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.909 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=264, 编号=341200_263597, 机构=阜阳市, IP=53.162.215.32:80 +2026-06-29 14:43:11.909 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=264 +2026-06-29 14:43:11.955 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:11.955 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=276, 编号=341200_726395, 机构=阜阳市, IP=53.162.217.103:80 +2026-06-29 14:43:11.955 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=276 +2026-06-29 14:43:12.005 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:12.005 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=282, 编号=341200_351972, 机构=阜阳市, IP=53.162.218.66:80 +2026-06-29 14:43:12.005 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=282 +2026-06-29 14:43:12.046 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:12.046 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=256, 编号=341500_263591, 机构=六安市, IP=115.23.64.142:80 +2026-06-29 14:43:12.046 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=256 +2026-06-29 14:43:12.096 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:12.096 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=238, 编号=341500_925136, 机构=六安市, IP=115.23.61.79:80 +2026-06-29 14:43:12.097 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=238 +2026-06-29 14:43:12.136 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:12.136 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=277, 编号=341700_263597, 机构=池州市, IP=117.48.33.86:8080 +2026-06-29 14:43:12.136 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=277 +2026-06-29 14:43:12.186 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:12.186 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=284, 编号=341800_263591, 机构=宣城市, IP=114.105.36.74:80 +2026-06-29 14:43:12.186 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=284 +2026-06-29 14:43:12.233 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:43:12.233 [main] INFO c.t.d.service.VaaSyncService - 【主流程】同步完成,成功 31 个,失败 0 个 +2026-06-29 14:45:25.216 [main] INFO c.t.dataserviceyy.util.OssUploadTest - Starting OssUploadTest using Java 1.8.0_492 on MswangdeMacBook-Air.local with PID 54786 (started by wang in /Users/wang/sanduoyun/developspace/dataservice-yy) +2026-06-29 14:45:25.216 [main] DEBUG c.t.dataserviceyy.util.OssUploadTest - Running with Spring Boot v2.6.13, Spring v5.3.23 +2026-06-29 14:45:25.217 [main] INFO c.t.dataserviceyy.util.OssUploadTest - No active profile set, falling back to 1 default profile: "default" +2026-06-29 14:45:25.889 [main] INFO c.t.d.util.FileUploadUtil - 文件上传工具初始化完成 +2026-06-29 14:45:25.889 [main] INFO c.t.d.util.FileUploadUtil - OSS基础地址: https://8.148.25.165/apiOss +2026-06-29 14:45:25.890 [main] INFO c.t.d.util.FileUploadUtil - 上传接口: https://8.148.25.165/apiOss/oss/fileUpload +2026-06-29 14:45:26.287 [main] INFO c.t.dataserviceyy.util.OssUploadTest - Started OssUploadTest in 1.22 seconds (JVM running for 1.651) +2026-06-29 14:45:26.289 [main] DEBUG c.t.dataserviceyy.util.FileCleaner - 基础目录不存在或不是目录: ./vaa-recordings +2026-06-29 14:45:26.304 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2026-06-29 14:45:26.308 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2026-06-29 14:45:26.930 [main] INFO c.t.d.service.VaaSyncService - 【主流程】查询到 31 个在线语音设备 +2026-06-29 14:45:26.930 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=239, 编号=340100_135926, 机构=合肥市, IP=112.25.31.145:8082 +2026-06-29 14:45:26.930 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=239 +2026-06-29 14:45:27.005 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:27.005 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=263, 编号=340100_351972, 机构=合肥市, IP=112.25.35.66:8082 +2026-06-29 14:45:27.005 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=263 +2026-06-29 14:45:27.054 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:27.054 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=233, 编号=340100_263591, 机构=合肥市, IP=112.25.30.122:8080 +2026-06-29 14:45:27.054 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=233 +2026-06-29 14:45:27.094 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:27.094 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=245, 编号=340100_592361, 机构=合肥市, IP=112.25.32.109:8080 +2026-06-29 14:45:27.094 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=245 +2026-06-29 14:45:27.139 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:27.139 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=251, 编号=340100_693257, 机构=合肥市, IP=112.25.33.78:8081 +2026-06-29 14:45:27.139 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=251 +2026-06-29 14:45:27.179 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:27.179 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=257, 编号=340100_715923, 机构=合肥市, IP=112.25.34.131:8080 +2026-06-29 14:45:27.179 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=257 +2026-06-29 14:45:27.224 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:27.224 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=269, 编号=340100_832691, 机构=合肥市, IP=112.25.36.97:8080 +2026-06-29 14:45:27.224 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=269 +2026-06-29 14:45:27.272 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:27.272 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=275, 编号=340100_582391, 机构=合肥市, IP=112.25.37.126:8081 +2026-06-29 14:45:27.272 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=275 +2026-06-29 14:45:27.315 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2026-06-29 14:45:27.317 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2026-06-29 14:45:28.342 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2026-06-29 14:45:28.343 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2026-06-29 14:45:32.308 [main] INFO c.t.dataserviceyy.util.OssUploadTest - Starting OssUploadTest using Java 1.8.0_492 on MswangdeMacBook-Air.local with PID 54810 (started by wang in /Users/wang/sanduoyun/developspace/dataservice-yy) +2026-06-29 14:45:32.309 [main] DEBUG c.t.dataserviceyy.util.OssUploadTest - Running with Spring Boot v2.6.13, Spring v5.3.23 +2026-06-29 14:45:32.309 [main] INFO c.t.dataserviceyy.util.OssUploadTest - No active profile set, falling back to 1 default profile: "default" +2026-06-29 14:45:32.940 [main] INFO c.t.d.util.FileUploadUtil - 文件上传工具初始化完成 +2026-06-29 14:45:32.940 [main] INFO c.t.d.util.FileUploadUtil - OSS基础地址: https://8.148.25.165/apiOss +2026-06-29 14:45:32.941 [main] INFO c.t.d.util.FileUploadUtil - 上传接口: https://8.148.25.165/apiOss/oss/fileUpload +2026-06-29 14:45:33.349 [main] INFO c.t.dataserviceyy.util.OssUploadTest - Started OssUploadTest in 1.195 seconds (JVM running for 1.645) +2026-06-29 14:45:33.350 [main] DEBUG c.t.dataserviceyy.util.FileCleaner - 基础目录不存在或不是目录: ./vaa-recordings +2026-06-29 14:45:33.361 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2026-06-29 14:45:33.364 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2026-06-29 14:45:33.962 [main] INFO c.t.d.service.VaaSyncService - 【主流程】查询到 31 个在线语音设备 +2026-06-29 14:45:33.962 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=239, 编号=340100_135926, 机构=合肥市, IP=112.25.31.145:8082 +2026-06-29 14:45:33.962 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=239 +2026-06-29 14:45:34.028 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.028 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=263, 编号=340100_351972, 机构=合肥市, IP=112.25.35.66:8082 +2026-06-29 14:45:34.028 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=263 +2026-06-29 14:45:34.069 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.069 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=233, 编号=340100_263591, 机构=合肥市, IP=112.25.30.122:8080 +2026-06-29 14:45:34.069 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=233 +2026-06-29 14:45:34.109 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.109 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=245, 编号=340100_592361, 机构=合肥市, IP=112.25.32.109:8080 +2026-06-29 14:45:34.109 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=245 +2026-06-29 14:45:34.149 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.149 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=251, 编号=340100_693257, 机构=合肥市, IP=112.25.33.78:8081 +2026-06-29 14:45:34.149 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=251 +2026-06-29 14:45:34.194 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.194 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=257, 编号=340100_715923, 机构=合肥市, IP=112.25.34.131:8080 +2026-06-29 14:45:34.194 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=257 +2026-06-29 14:45:34.239 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.239 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=269, 编号=340100_832691, 机构=合肥市, IP=112.25.36.97:8080 +2026-06-29 14:45:34.239 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=269 +2026-06-29 14:45:34.279 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.279 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=275, 编号=340100_582391, 机构=合肥市, IP=112.25.37.126:8081 +2026-06-29 14:45:34.279 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=275 +2026-06-29 14:45:34.313 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.314 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=281, 编号=340100_925136, 机构=合肥市, IP=112.25.38.53:8080 +2026-06-29 14:45:34.314 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=281 +2026-06-29 14:45:34.356 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.356 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=287, 编号=340100_135926, 机构=合肥市, IP=112.25.39.104:8082 +2026-06-29 14:45:34.356 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=287 +2026-06-29 14:45:34.393 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.393 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=249, 编号=340800_726395, 机构=安庆市, IP=116.22.54.156:8080 +2026-06-29 14:45:34.393 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=249 +2026-06-29 14:45:34.438 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.438 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=291, 编号=340800_259136, 机构=安庆市, IP=116.22.61.84:8081 +2026-06-29 14:45:34.438 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=291 +2026-06-29 14:45:34.481 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.481 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=237, 编号=340800_726359, 机构=安庆市, IP=116.22.52.133:8080 +2026-06-29 14:45:34.481 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=237 +2026-06-29 14:45:34.518 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.518 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=243, 编号=340800_263597, 机构=安庆市, IP=116.22.53.89:8081 +2026-06-29 14:45:34.518 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=243 +2026-06-29 14:45:34.562 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.562 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=255, 编号=340800_351972, 机构=安庆市, IP=116.22.55.63:8082 +2026-06-29 14:45:34.562 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=255 +2026-06-29 14:45:34.599 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.599 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=261, 编号=340800_395162, 机构=安庆市, IP=116.22.56.105:8080 +2026-06-29 14:45:34.599 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=261 +2026-06-29 14:45:34.639 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.639 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=267, 编号=340800_592361, 机构=安庆市, IP=116.22.57.149:8081 +2026-06-29 14:45:34.639 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=267 +2026-06-29 14:45:34.676 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.677 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=279, 编号=340800_832691, 机构=安庆市, IP=116.22.59.118:8082 +2026-06-29 14:45:34.677 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=279 +2026-06-29 14:45:34.721 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.721 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=285, 编号=340800_582391, 机构=安庆市, IP=116.22.60.132:8080 +2026-06-29 14:45:34.721 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=285 +2026-06-29 14:45:34.761 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.761 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=270, 编号=341200_395162, 机构=阜阳市, IP=53.162.216.71:80 +2026-06-29 14:45:34.761 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=270 +2026-06-29 14:45:34.801 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.801 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=234, 编号=341200_361592, 机构=阜阳市, IP=53.162.212.136:80 +2026-06-29 14:45:34.801 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=234 +2026-06-29 14:45:34.836 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.836 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=240, 编号=341200_582391, 机构=阜阳市, IP=53.162.211.98:80 +2026-06-29 14:45:34.836 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=240 +2026-06-29 14:45:34.880 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.880 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=252, 编号=341200_135926, 机构=阜阳市, IP=53.162.213.45:80 +2026-06-29 14:45:34.880 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=252 +2026-06-29 14:45:34.916 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.917 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=258, 编号=341200_592631, 机构=阜阳市, IP=53.162.214.89:80 +2026-06-29 14:45:34.917 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=258 +2026-06-29 14:45:34.959 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.959 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=264, 编号=341200_263597, 机构=阜阳市, IP=53.162.215.32:80 +2026-06-29 14:45:34.959 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=264 +2026-06-29 14:45:34.994 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:34.994 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=276, 编号=341200_726395, 机构=阜阳市, IP=53.162.217.103:80 +2026-06-29 14:45:34.994 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=276 +2026-06-29 14:45:35.034 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:35.034 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=282, 编号=341200_351972, 机构=阜阳市, IP=53.162.218.66:80 +2026-06-29 14:45:35.034 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=282 +2026-06-29 14:45:35.081 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:35.081 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=256, 编号=341500_263591, 机构=六安市, IP=115.23.64.142:80 +2026-06-29 14:45:35.081 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=256 +2026-06-29 14:45:35.122 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:35.122 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=238, 编号=341500_925136, 机构=六安市, IP=115.23.61.79:80 +2026-06-29 14:45:35.122 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=238 +2026-06-29 14:45:35.162 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:35.163 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=277, 编号=341700_263597, 机构=池州市, IP=117.48.33.86:8080 +2026-06-29 14:45:35.163 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=277 +2026-06-29 14:45:35.211 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:35.212 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=284, 编号=341800_263591, 机构=宣城市, IP=114.105.36.74:80 +2026-06-29 14:45:35.212 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=284 +2026-06-29 14:45:35.266 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:45:35.266 [main] INFO c.t.d.service.VaaSyncService - 【主流程】同步完成,成功 31 个,失败 0 个 +2026-06-29 14:45:35.415 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2026-06-29 14:45:35.416 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2026-06-29 14:48:21.339 [main] INFO c.t.dataserviceyy.util.OssUploadTest - Starting OssUploadTest using Java 1.8.0_492 on MswangdeMacBook-Air.local with PID 55024 (started by wang in /Users/wang/sanduoyun/developspace/dataservice-yy) +2026-06-29 14:48:21.340 [main] DEBUG c.t.dataserviceyy.util.OssUploadTest - Running with Spring Boot v2.6.13, Spring v5.3.23 +2026-06-29 14:48:21.340 [main] INFO c.t.dataserviceyy.util.OssUploadTest - No active profile set, falling back to 1 default profile: "default" +2026-06-29 14:48:22.018 [main] INFO c.t.d.util.FileUploadUtil - 文件上传工具初始化完成 +2026-06-29 14:48:22.018 [main] INFO c.t.d.util.FileUploadUtil - OSS基础地址: https://8.148.25.165/apiOss +2026-06-29 14:48:22.019 [main] INFO c.t.d.util.FileUploadUtil - 上传接口: https://8.148.25.165/apiOss/oss/fileUpload +2026-06-29 14:48:22.465 [main] INFO c.t.dataserviceyy.util.OssUploadTest - Started OssUploadTest in 1.286 seconds (JVM running for 1.796) +2026-06-29 14:48:22.467 [main] DEBUG c.t.dataserviceyy.util.FileCleaner - 基础目录不存在或不是目录: ./vaa-recordings +2026-06-29 14:48:22.479 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2026-06-29 14:48:22.484 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2026-06-29 14:48:23.083 [main] INFO c.t.d.service.VaaSyncService - 【主流程】查询到 31 个在线语音设备 +2026-06-29 14:48:23.084 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=239, 编号=340100_135926, 机构=合肥市, IP=112.25.31.145:8082 +2026-06-29 14:48:23.084 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=239 +2026-06-29 14:48:23.159 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.159 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=263, 编号=340100_351972, 机构=合肥市, IP=112.25.35.66:8082 +2026-06-29 14:48:23.159 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=263 +2026-06-29 14:48:23.213 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.214 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=233, 编号=340100_263591, 机构=合肥市, IP=112.25.30.122:8080 +2026-06-29 14:48:23.214 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=233 +2026-06-29 14:48:23.254 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.254 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=245, 编号=340100_592361, 机构=合肥市, IP=112.25.32.109:8080 +2026-06-29 14:48:23.254 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=245 +2026-06-29 14:48:23.298 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.298 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=251, 编号=340100_693257, 机构=合肥市, IP=112.25.33.78:8081 +2026-06-29 14:48:23.299 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=251 +2026-06-29 14:48:23.338 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.339 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=257, 编号=340100_715923, 机构=合肥市, IP=112.25.34.131:8080 +2026-06-29 14:48:23.339 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=257 +2026-06-29 14:48:23.378 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.378 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=269, 编号=340100_832691, 机构=合肥市, IP=112.25.36.97:8080 +2026-06-29 14:48:23.378 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=269 +2026-06-29 14:48:23.413 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.413 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=275, 编号=340100_582391, 机构=合肥市, IP=112.25.37.126:8081 +2026-06-29 14:48:23.413 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=275 +2026-06-29 14:48:23.458 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.458 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=281, 编号=340100_925136, 机构=合肥市, IP=112.25.38.53:8080 +2026-06-29 14:48:23.458 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=281 +2026-06-29 14:48:23.498 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.498 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=287, 编号=340100_135926, 机构=合肥市, IP=112.25.39.104:8082 +2026-06-29 14:48:23.498 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=287 +2026-06-29 14:48:23.538 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.538 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=249, 编号=340800_726395, 机构=安庆市, IP=116.22.54.156:8080 +2026-06-29 14:48:23.538 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=249 +2026-06-29 14:48:23.578 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.578 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=291, 编号=340800_259136, 机构=安庆市, IP=116.22.61.84:8081 +2026-06-29 14:48:23.578 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=291 +2026-06-29 14:48:23.641 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.641 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=237, 编号=340800_726359, 机构=安庆市, IP=116.22.52.133:8080 +2026-06-29 14:48:23.641 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=237 +2026-06-29 14:48:23.693 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.693 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=243, 编号=340800_263597, 机构=安庆市, IP=116.22.53.89:8081 +2026-06-29 14:48:23.693 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=243 +2026-06-29 14:48:23.738 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.739 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=255, 编号=340800_351972, 机构=安庆市, IP=116.22.55.63:8082 +2026-06-29 14:48:23.739 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=255 +2026-06-29 14:48:23.774 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.774 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=261, 编号=340800_395162, 机构=安庆市, IP=116.22.56.105:8080 +2026-06-29 14:48:23.774 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=261 +2026-06-29 14:48:23.821 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.821 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=267, 编号=340800_592361, 机构=安庆市, IP=116.22.57.149:8081 +2026-06-29 14:48:23.821 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=267 +2026-06-29 14:48:23.861 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.861 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=279, 编号=340800_832691, 机构=安庆市, IP=116.22.59.118:8082 +2026-06-29 14:48:23.861 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=279 +2026-06-29 14:48:23.901 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.901 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=285, 编号=340800_582391, 机构=安庆市, IP=116.22.60.132:8080 +2026-06-29 14:48:23.901 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=285 +2026-06-29 14:48:23.946 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:23.947 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=270, 编号=341200_395162, 机构=阜阳市, IP=53.162.216.71:80 +2026-06-29 14:48:23.947 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=270 +2026-06-29 14:48:24.021 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.022 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=234, 编号=341200_361592, 机构=阜阳市, IP=53.162.212.136:80 +2026-06-29 14:48:24.022 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=234 +2026-06-29 14:48:24.061 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.061 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=240, 编号=341200_582391, 机构=阜阳市, IP=53.162.211.98:80 +2026-06-29 14:48:24.061 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=240 +2026-06-29 14:48:24.111 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.111 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=252, 编号=341200_135926, 机构=阜阳市, IP=53.162.213.45:80 +2026-06-29 14:48:24.111 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=252 +2026-06-29 14:48:24.161 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.161 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=258, 编号=341200_592631, 机构=阜阳市, IP=53.162.214.89:80 +2026-06-29 14:48:24.161 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=258 +2026-06-29 14:48:24.214 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.214 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=264, 编号=341200_263597, 机构=阜阳市, IP=53.162.215.32:80 +2026-06-29 14:48:24.214 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=264 +2026-06-29 14:48:24.266 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.266 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=276, 编号=341200_726395, 机构=阜阳市, IP=53.162.217.103:80 +2026-06-29 14:48:24.266 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=276 +2026-06-29 14:48:24.302 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.302 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=282, 编号=341200_351972, 机构=阜阳市, IP=53.162.218.66:80 +2026-06-29 14:48:24.302 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=282 +2026-06-29 14:48:24.343 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.344 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=256, 编号=341500_263591, 机构=六安市, IP=115.23.64.142:80 +2026-06-29 14:48:24.344 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=256 +2026-06-29 14:48:24.381 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.381 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=238, 编号=341500_925136, 机构=六安市, IP=115.23.61.79:80 +2026-06-29 14:48:24.381 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=238 +2026-06-29 14:48:24.429 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.429 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=277, 编号=341700_263597, 机构=池州市, IP=117.48.33.86:8080 +2026-06-29 14:48:24.429 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=277 +2026-06-29 14:48:24.466 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.466 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=284, 编号=341800_263591, 机构=宣城市, IP=114.105.36.74:80 +2026-06-29 14:48:24.466 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=284 +2026-06-29 14:48:24.508 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:48:24.509 [main] INFO c.t.d.service.VaaSyncService - 【主流程】同步完成,成功 31 个,失败 0 个 +2026-06-29 14:48:24.810 [main] ERROR c.t.d.util.FileUploadUtil - 文件上传异常: voice/huainan/340100/20260605 +org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://8.148.25.165/apiOss/oss/fileUpload": PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target + at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:785) + at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:711) + at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:602) + at com.threecloud.dataserviceyy.util.FileUploadUtil.uploadFile(FileUploadUtil.java:144) + at com.threecloud.dataserviceyy.util.FileUploadUtil.uploadWav(FileUploadUtil.java:81) + at com.threecloud.dataserviceyy.util.OssUploadTest.testUpload(OssUploadTest.java:36) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.lang.reflect.Method.invoke(Method.java:498) + at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:725) + at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60) + at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131) + at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149) + at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140) + at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:84) + at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115) + at org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105) + at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106) + at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64) + at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45) + at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37) + at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104) + at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98) + at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:214) + at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) + at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:210) + at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:135) + at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:66) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151) + at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) + at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) + at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) + at java.util.ArrayList.forEach(ArrayList.java:1259) + at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) + at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) + at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) + at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) + at java.util.ArrayList.forEach(ArrayList.java:1259) + at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155) + at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141) + at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139) + at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138) + at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95) + at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35) + at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57) + at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54) + at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107) + at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88) + at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54) + at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67) + at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52) + at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114) + at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86) + at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86) + at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:53) + at com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs(JUnit5IdeaTestRunner.java:66) + at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38) + at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11) + at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35) + at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:237) + at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:58) +Caused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target + at sun.security.ssl.Alert.createSSLException(Alert.java:131) + at sun.security.ssl.TransportContext.fatal(TransportContext.java:331) + at sun.security.ssl.TransportContext.fatal(TransportContext.java:274) + at sun.security.ssl.TransportContext.fatal(TransportContext.java:269) + at sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:654) + at sun.security.ssl.CertificateMessage$T12CertificateConsumer.onCertificate(CertificateMessage.java:473) + at sun.security.ssl.CertificateMessage$T12CertificateConsumer.consume(CertificateMessage.java:369) + at sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:377) + at sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:444) + at sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:422) + at sun.security.ssl.TransportContext.dispatch(TransportContext.java:182) + at sun.security.ssl.SSLTransport.decode(SSLTransport.java:152) + at sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1401) + at sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1309) + at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:440) + at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) + at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:197) + at sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:167) + at org.springframework.http.client.SimpleStreamingClientHttpRequest.getBodyInternal(SimpleStreamingClientHttpRequest.java:87) + at org.springframework.http.client.AbstractClientHttpRequest.getBody(AbstractClientHttpRequest.java:60) + at org.springframework.http.converter.FormHttpMessageConverter.writeMultipart(FormHttpMessageConverter.java:497) + at org.springframework.http.converter.FormHttpMessageConverter.write(FormHttpMessageConverter.java:369) + at org.springframework.http.converter.FormHttpMessageConverter.write(FormHttpMessageConverter.java:156) + at org.springframework.web.client.RestTemplate$HttpEntityRequestCallback.doWithRequest(RestTemplate.java:991) + at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:774) + ... 74 common frames omitted +Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target + at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:456) + at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:323) + at sun.security.validator.Validator.validate(Validator.java:271) + at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:315) + at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:223) + at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:129) + at sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:638) + ... 94 common frames omitted +Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target + at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:148) + at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:129) + at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280) + at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:451) + ... 100 common frames omitted +2026-06-29 14:48:24.827 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2026-06-29 14:48:24.827 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. +2026-06-29 14:50:08.652 [main] INFO c.t.dataserviceyy.util.OssUploadTest - Starting OssUploadTest using Java 1.8.0_492 on MswangdeMacBook-Air.local with PID 55199 (started by wang in /Users/wang/sanduoyun/developspace/dataservice-yy) +2026-06-29 14:50:08.653 [main] DEBUG c.t.dataserviceyy.util.OssUploadTest - Running with Spring Boot v2.6.13, Spring v5.3.23 +2026-06-29 14:50:08.653 [main] INFO c.t.dataserviceyy.util.OssUploadTest - No active profile set, falling back to 1 default profile: "default" +2026-06-29 14:50:09.529 [main] INFO c.t.d.util.FileUploadUtil - 文件上传工具初始化完成 +2026-06-29 14:50:09.529 [main] INFO c.t.d.util.FileUploadUtil - OSS基础地址: https://8.148.25.165/apiOss +2026-06-29 14:50:09.530 [main] INFO c.t.d.util.FileUploadUtil - 上传接口: https://8.148.25.165/apiOss/oss/fileUpload +2026-06-29 14:50:10.060 [main] INFO c.t.dataserviceyy.util.OssUploadTest - Started OssUploadTest in 1.642 seconds (JVM running for 2.541) +2026-06-29 14:50:10.062 [main] DEBUG c.t.dataserviceyy.util.FileCleaner - 基础目录不存在或不是目录: ./vaa-recordings +2026-06-29 14:50:10.086 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2026-06-29 14:50:10.094 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2026-06-29 14:50:10.885 [main] INFO c.t.d.service.VaaSyncService - 【主流程】查询到 31 个在线语音设备 +2026-06-29 14:50:10.886 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=239, 编号=340100_135926, 机构=合肥市, IP=112.25.31.145:8082 +2026-06-29 14:50:10.886 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=239 +2026-06-29 14:50:10.981 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:10.981 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=263, 编号=340100_351972, 机构=合肥市, IP=112.25.35.66:8082 +2026-06-29 14:50:10.981 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=263 +2026-06-29 14:50:11.025 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.026 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=233, 编号=340100_263591, 机构=合肥市, IP=112.25.30.122:8080 +2026-06-29 14:50:11.026 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=233 +2026-06-29 14:50:11.073 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.073 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=245, 编号=340100_592361, 机构=合肥市, IP=112.25.32.109:8080 +2026-06-29 14:50:11.073 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=245 +2026-06-29 14:50:11.118 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.118 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=251, 编号=340100_693257, 机构=合肥市, IP=112.25.33.78:8081 +2026-06-29 14:50:11.118 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=251 +2026-06-29 14:50:11.163 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.163 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=257, 编号=340100_715923, 机构=合肥市, IP=112.25.34.131:8080 +2026-06-29 14:50:11.163 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=257 +2026-06-29 14:50:11.208 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.208 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=269, 编号=340100_832691, 机构=合肥市, IP=112.25.36.97:8080 +2026-06-29 14:50:11.208 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=269 +2026-06-29 14:50:11.248 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.248 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=275, 编号=340100_582391, 机构=合肥市, IP=112.25.37.126:8081 +2026-06-29 14:50:11.248 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=275 +2026-06-29 14:50:11.289 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.289 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=281, 编号=340100_925136, 机构=合肥市, IP=112.25.38.53:8080 +2026-06-29 14:50:11.289 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=281 +2026-06-29 14:50:11.339 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.339 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=287, 编号=340100_135926, 机构=合肥市, IP=112.25.39.104:8082 +2026-06-29 14:50:11.339 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=287 +2026-06-29 14:50:11.386 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.387 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=249, 编号=340800_726395, 机构=安庆市, IP=116.22.54.156:8080 +2026-06-29 14:50:11.387 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=249 +2026-06-29 14:50:11.431 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.431 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=291, 编号=340800_259136, 机构=安庆市, IP=116.22.61.84:8081 +2026-06-29 14:50:11.431 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=291 +2026-06-29 14:50:11.474 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.474 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=237, 编号=340800_726359, 机构=安庆市, IP=116.22.52.133:8080 +2026-06-29 14:50:11.474 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=237 +2026-06-29 14:50:11.513 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.514 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=243, 编号=340800_263597, 机构=安庆市, IP=116.22.53.89:8081 +2026-06-29 14:50:11.514 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=243 +2026-06-29 14:50:11.566 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.566 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=255, 编号=340800_351972, 机构=安庆市, IP=116.22.55.63:8082 +2026-06-29 14:50:11.566 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=255 +2026-06-29 14:50:11.607 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.607 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=261, 编号=340800_395162, 机构=安庆市, IP=116.22.56.105:8080 +2026-06-29 14:50:11.607 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=261 +2026-06-29 14:50:11.656 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.657 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=267, 编号=340800_592361, 机构=安庆市, IP=116.22.57.149:8081 +2026-06-29 14:50:11.657 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=267 +2026-06-29 14:50:11.703 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.704 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=279, 编号=340800_832691, 机构=安庆市, IP=116.22.59.118:8082 +2026-06-29 14:50:11.704 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=279 +2026-06-29 14:50:11.759 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.759 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=285, 编号=340800_582391, 机构=安庆市, IP=116.22.60.132:8080 +2026-06-29 14:50:11.759 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=285 +2026-06-29 14:50:11.806 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.806 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=270, 编号=341200_395162, 机构=阜阳市, IP=53.162.216.71:80 +2026-06-29 14:50:11.806 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=270 +2026-06-29 14:50:11.860 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.860 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=234, 编号=341200_361592, 机构=阜阳市, IP=53.162.212.136:80 +2026-06-29 14:50:11.860 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=234 +2026-06-29 14:50:11.907 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.907 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=240, 编号=341200_582391, 机构=阜阳市, IP=53.162.211.98:80 +2026-06-29 14:50:11.907 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=240 +2026-06-29 14:50:11.959 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.959 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=252, 编号=341200_135926, 机构=阜阳市, IP=53.162.213.45:80 +2026-06-29 14:50:11.959 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=252 +2026-06-29 14:50:11.998 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:11.998 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=258, 编号=341200_592631, 机构=阜阳市, IP=53.162.214.89:80 +2026-06-29 14:50:11.998 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=258 +2026-06-29 14:50:12.041 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:12.041 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=264, 编号=341200_263597, 机构=阜阳市, IP=53.162.215.32:80 +2026-06-29 14:50:12.041 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=264 +2026-06-29 14:50:12.086 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:12.086 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=276, 编号=341200_726395, 机构=阜阳市, IP=53.162.217.103:80 +2026-06-29 14:50:12.086 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=276 +2026-06-29 14:50:12.125 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:12.126 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=282, 编号=341200_351972, 机构=阜阳市, IP=53.162.218.66:80 +2026-06-29 14:50:12.126 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=282 +2026-06-29 14:50:12.173 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:12.173 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=256, 编号=341500_263591, 机构=六安市, IP=115.23.64.142:80 +2026-06-29 14:50:12.173 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=256 +2026-06-29 14:50:12.218 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:12.218 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=238, 编号=341500_925136, 机构=六安市, IP=115.23.61.79:80 +2026-06-29 14:50:12.218 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=238 +2026-06-29 14:50:12.263 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:12.263 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=277, 编号=341700_263597, 机构=池州市, IP=117.48.33.86:8080 +2026-06-29 14:50:12.263 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=277 +2026-06-29 14:50:12.308 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:12.309 [main] INFO c.t.d.service.VaaSyncService - 【设备】同步设备: ID=284, 编号=341800_263591, 机构=宣城市, IP=114.105.36.74:80 +2026-06-29 14:50:12.309 [main] WARN c.t.d.service.VaaSyncService - 【设备】账号密码为空,跳过: ID=284 +2026-06-29 14:50:12.353 [main] ERROR c.t.d.service.VaaSyncService - 保存设备连接日志失败: +### Error updating database. Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +### The error may exist in com/threecloud/dataserviceyy/mapper/MidVoiceDeviceLogMapper.java (best guess) +### The error may involve com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper.insert-Inline +### The error occurred while setting parameters +### SQL: INSERT INTO mid_voice_device_log (device_id, device_no, city_code, city_name, ip_address, device_port, connect_type, connect_status, fail_reason, create_time) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +### Cause: com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +; bad SQL grammar []; nested exception is com.kingbase8.util.KSQLException: ERROR: relation "mid_voice_device_log" does not exist + Position: 13 At Line: 1, Line Position: 13 +2026-06-29 14:50:12.353 [main] INFO c.t.d.service.VaaSyncService - 【主流程】同步完成,成功 31 个,失败 0 个 +2026-06-29 14:50:13.958 [main] WARN c.t.d.util.FileUploadUtil - OSS 返回 content 为空 +2026-06-29 14:50:13.959 [main] INFO c.t.d.util.FileUploadUtil - 文件上传完成,完整URL: +2026-06-29 14:50:13.983 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... +2026-06-29 14:50:13.984 [SpringApplicationShutdownHook] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. diff --git a/src/main/java/com/threecloud/dataserviceyy/config/FileUploadConfig.java b/src/main/java/com/threecloud/dataserviceyy/config/FileUploadConfig.java deleted file mode 100644 index 8d4dab7..0000000 --- a/src/main/java/com/threecloud/dataserviceyy/config/FileUploadConfig.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.threecloud.dataserviceyy.config; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.stereotype.Component; - -import java.util.HashMap; -import java.util.Map; - -@Data -@Component -@ConfigurationProperties(prefix = "file-upload") -public class FileUploadConfig { - private String uploadUrl; - private Map extraParams = new HashMap<>(); -} diff --git a/src/main/java/com/threecloud/dataserviceyy/controller/VoiceBoxController.java b/src/main/java/com/threecloud/dataserviceyy/controller/VoiceBoxController.java index 5afe851..f2a8d78 100644 --- a/src/main/java/com/threecloud/dataserviceyy/controller/VoiceBoxController.java +++ b/src/main/java/com/threecloud/dataserviceyy/controller/VoiceBoxController.java @@ -1,9 +1,7 @@ package com.threecloud.dataserviceyy.controller; -import com.threecloud.dataserviceyy.util.FileUploadUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -21,9 +19,6 @@ public class VoiceBoxController { private static final Logger logger = LoggerFactory.getLogger(VoiceBoxController.class); private static final DateTimeFormatter DATE_FORMAT = DateTimeFormatter.ofPattern("yyyyMMdd"); - @Autowired - private FileUploadUtil fileUploadUtil; - /** * 事件上传接口 - GET方式 * 语音盒来电/去电时主动推送事件信息 diff --git a/src/main/java/com/threecloud/dataserviceyy/entity/OssFileResponse.java b/src/main/java/com/threecloud/dataserviceyy/entity/OssFileResponse.java new file mode 100644 index 0000000..8b4019d --- /dev/null +++ b/src/main/java/com/threecloud/dataserviceyy/entity/OssFileResponse.java @@ -0,0 +1,83 @@ +package com.threecloud.dataserviceyy.entity; + +/** + * OSS文件上传响应实体 + * 对应新OSS文件存储服务的上传接口返回格式 + * + * 响应示例: + * { + * "fileName": "demo.mp4", + * "fileUrl": "http://ip:8088/upload/public/common/abc123_20260629.mp4", + * "fileKey": "public/common/abc123_20260629.mp4", + * "fileSize": 1024000, + * "fileType": "mp4" + * } + */ +public class OssFileResponse { + + /** 文件原始名称 */ + private String fileName; + + /** 文件访问地址,浏览器可直接打开播放 */ + private String fileUrl; + + /** 文件唯一标识,用于后续下载/预览/删除等操作 */ + private String fileKey; + + /** 文件大小(字节) */ + private Long fileSize; + + /** 文件扩展名 */ + private String fileType; + + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + + public String getFileUrl() { + return fileUrl; + } + + public void setFileUrl(String fileUrl) { + this.fileUrl = fileUrl; + } + + public String getFileKey() { + return fileKey; + } + + public void setFileKey(String fileKey) { + this.fileKey = fileKey; + } + + public Long getFileSize() { + return fileSize; + } + + public void setFileSize(Long fileSize) { + this.fileSize = fileSize; + } + + public String getFileType() { + return fileType; + } + + public void setFileType(String fileType) { + this.fileType = fileType; + } + + @Override + public String toString() { + return "OssFileResponse{" + + "fileName='" + fileName + '\'' + + ", fileUrl='" + fileUrl + '\'' + + ", fileKey='" + fileKey + '\'' + + ", fileSize=" + fileSize + + ", fileType='" + fileType + '\'' + + '}'; + } +} \ No newline at end of file diff --git a/src/main/java/com/threecloud/dataserviceyy/entity/ResultEntity.java b/src/main/java/com/threecloud/dataserviceyy/entity/ResultEntity.java index eae4546..48d05c1 100644 --- a/src/main/java/com/threecloud/dataserviceyy/entity/ResultEntity.java +++ b/src/main/java/com/threecloud/dataserviceyy/entity/ResultEntity.java @@ -123,9 +123,9 @@ public class ResultEntity implements Serializable { public enum StatusCode{ /**失败*/ - FAILURE(1), + FAILURE(0), /**成功*/ - SUCCESS(0); + SUCCESS(1); private Integer code; private StatusCode(Integer code) { this.code = code; diff --git a/src/main/java/com/threecloud/dataserviceyy/service/VaaSyncService.java b/src/main/java/com/threecloud/dataserviceyy/service/VaaSyncService.java index 7559f9e..59fb9b1 100644 --- a/src/main/java/com/threecloud/dataserviceyy/service/VaaSyncService.java +++ b/src/main/java/com/threecloud/dataserviceyy/service/VaaSyncService.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson2.JSONArray; import com.alibaba.fastjson2.JSONObject; import com.threecloud.dataserviceyy.entity.MidVoiceCallRecord; import com.threecloud.dataserviceyy.entity.MidVoiceDeviceLog; +import com.threecloud.dataserviceyy.entity.OssFileResponse; import com.threecloud.dataserviceyy.mapper.MidVoiceCallRecordMapper; import com.threecloud.dataserviceyy.mapper.MidVoiceDeviceLogMapper; import com.threecloud.dataserviceyy.mapper.VoiceSyncMapper; @@ -43,7 +44,7 @@ public class VaaSyncService { @Autowired private VaaHttpUtil vaaHttpUtil; @Autowired - private FileUploadUtil fileUploadUtil; + private OssFileService ossFileService; @Value("${vaa-sync.download-path:./vaa-recordings}") private String downloadPath; @@ -53,7 +54,7 @@ public class VaaSyncService { /** * 定时同步任务 */ - @Scheduled(cron = "${vaa-sync.sync-interval-cron:0 0 0/2 * * ?}") + @Scheduled(cron = "${vaa-sync.sync-interval-cron:0 0 0/8 * * ?}") public void scheduledSync() { logger.info("【定时任务】========== VAA录音盒同步开始 =========="); long startTime = System.currentTimeMillis(); @@ -134,7 +135,7 @@ public class VaaSyncService { String authToken; try { String loginUrl = String.format("http://%s/authorize?username=%s&password=%s", - deviceHost, urlEncode(username), urlEncode(password)); + deviceHost, URLEncoder.encode(username, "UTF-8"), URLEncoder.encode(password, "UTF-8")); authToken = vaaHttpUtil.httpLogin(loginUrl); saveDeviceLog(deviceId, deviceNo, cityCode, cityName, ip, port, "1", "1", null); } catch (Exception e) { @@ -251,7 +252,6 @@ public class VaaSyncService { String fileName = FilePathUtil.extractFileName(filePath); String localPath = FilePathUtil.buildLocalPath(downloadPath, cityCode, callStartTime, deviceNo, fileName); Path localFile = Paths.get(localPath); - String ossPath = FilePathUtil.buildOssPath(cityCode, callStartTime, fileName); // 获取通道绑定的电话号码(从EBOX分机号码配置) String channelPhone = ""; @@ -275,11 +275,12 @@ public class VaaSyncService { } callRecord.setRecordingFileSize((int) Files.size(localFile)); - // 上传到OSS - byte[] wavData = Files.readAllBytes(localFile); - String ossUrl = fileUploadUtil.uploadWav(cityName, ossPath, fileName, wavData); - callRecord.setRecordingFilePath(ossUrl); - logger.info("【录音】上传OSS成功: {}", ossUrl); + // 上传到OSS并获取预览URL + OssFileResponse ossResponse = ossFileService.uploadFile( + Files.readAllBytes(localFile), fileName, "voice/" + cityCode + "/"); + String previewUrl = ossResponse.getFileUrl(); + callRecord.setRecordingFilePath(previewUrl); + logger.info("【录音】OSS预览URL: {}", previewUrl); // 保存到数据库 callRecordMapper.insert(callRecord); @@ -383,8 +384,4 @@ public class VaaSyncService { try { return Integer.parseInt(v.toString()); } catch (NumberFormatException e) { return defaultVal; } } - - private String urlEncode(String value) throws Exception { - return URLEncoder.encode(value, "UTF-8"); - } } diff --git a/src/main/java/com/threecloud/dataserviceyy/util/FileUploadUtil.java b/src/main/java/com/threecloud/dataserviceyy/util/FileUploadUtil.java deleted file mode 100644 index eefc216..0000000 --- a/src/main/java/com/threecloud/dataserviceyy/util/FileUploadUtil.java +++ /dev/null @@ -1,290 +0,0 @@ -package com.threecloud.dataserviceyy.util; - -import com.threecloud.dataserviceyy.entity.ResultEntity; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.core.io.ByteArrayResource; -import org.springframework.http.*; -import org.springframework.http.client.SimpleClientHttpRequestFactory; -import org.springframework.stereotype.Component; -import org.springframework.util.LinkedMultiValueMap; -import org.springframework.util.MultiValueMap; -import org.springframework.web.client.RestTemplate; - -import javax.annotation.PostConstruct; -import javax.net.ssl.HttpsURLConnection; -import java.io.IOException; -import java.net.HttpURLConnection; - -/** - * 文件上传工具类 - * 负责上传录音文件到 OSS,并返回完整的访问 URL - * - * 【配置说明】 - * vaa-sync.oss.base-url: OSS服务基础地址,用于拼接完整URL - * vaa-sync.oss.upload-url: OSS上传接口地址 - * vaa-sync.oss.appcode/appid/appsecret: OSS认证信息 - */ -@Component -public class FileUploadUtil { - - private static final Logger logger = LoggerFactory.getLogger(FileUploadUtil.class); - - // OSS配置(从配置文件读取) - @Value("${vaa-sync.oss.base-url:http://53.1.194.59:9090}") - private String ossBaseUrl; - - @Value("${vaa-sync.oss.upload-url:http://53.1.194.59:9090/apiOss/oss/fileUpload}") - private String ossUploadUrl; - - @Value("${vaa-sync.oss.appcode:dataservice-yy}") - private String ossAppcode; - - @Value("${vaa-sync.oss.appid:371a3368-e28e-4ba3-95a3-c31c19cf0ad0}") - private String ossAppid; - - @Value("${vaa-sync.oss.appsecret:06a6a80e-f9d2-4b3b-acc0-8d182c876074}") - private String ossAppsecret; - - private RestTemplate restTemplate; - - @PostConstruct - public void init() { - restTemplate = createRestTemplate(); - logger.info("文件上传工具初始化完成"); - logger.info(" OSS基础地址: {}", ossBaseUrl); - logger.info(" 上传接口: {}", ossUploadUrl); - } - - /** - * 上传WAV录音文件到OSS - * - * 存储路径格式: voice/{cityName}/{cityCode}/{date}/{filename} - * 示例: voice/合肥/340100/20240101/IN-xxx.wav - * - * 返回完整URL格式: {ossBaseUrl}/voice/{cityName}/{cityCode}/{date}/{filename} - * 示例: http://53.1.194.59:9090/voice/合肥/340100/20240101/IN-xxx.wav - * - * @param cityName 地市名称(如 合肥) - * @param ossPath OSS存储路径(格式: cityCode/date/filename) - * @param wavFileName WAV文件名 - * @param wavData 文件字节数组 - * @return 完整的文件访问URL - */ - public String uploadWav(String cityName, String ossPath, String wavFileName, byte[] wavData) { - // 构建OSS对象名: voice/{cityName}/{cityCode}/{date}/{filename} - String objectName = "voice/" + cityName + "/" + ossPath; - logger.debug("构建OSS对象名: {}", objectName); - - // 上传文件 - String relativeUrl = uploadFile(objectName, wavData); - - // 返回完整URL - String fullUrl = buildFullUrl(relativeUrl); - logger.info("文件上传完成,完整URL: {}", fullUrl); - - return fullUrl; - } - - /** - * 构建完整的文件访问URL - * - * 如果返回的是相对路径,拼接 base-url - * 如果返回的已经是完整URL,直接返回 - * - * @param url 从OSS返回的URL(可能是相对路径或完整URL) - * @return 完整的访问URL - */ - private String buildFullUrl(String url) { - if (url == null || url.isEmpty()) { - return ""; - } - - // 如果已经是完整URL,直接返回 - if (url.startsWith("http://") || url.startsWith("https://")) { - return url; - } - - // 拼接基础URL - String baseUrl = ossBaseUrl.endsWith("/") ? ossBaseUrl.substring(0, ossBaseUrl.length() - 1) : ossBaseUrl; - String relativePath = url.startsWith("/") ? url : "/" + url; - - return baseUrl + relativePath; - } - - /** - * 上传文件到OSS - * - * @param fileName 文件在OSS中的路径(如 voice/合肥/340100/...) - * @param fileData 文件字节数组 - * @return OSS返回的文件路径或URL - */ - private String uploadFile(String fileName, byte[] fileData) { - try { - HttpHeaders headers = new HttpHeaders(); - headers.setContentType(MediaType.MULTIPART_FORM_DATA); - - ByteArrayResource byteResource = new ByteArrayResource(fileData) { - @Override - public String getFilename() { - return fileName; - } - }; - - MultiValueMap body = new LinkedMultiValueMap<>(); - body.add("files", byteResource); - body.set("appcode", ossAppcode); - body.set("appid", ossAppid); - body.set("appsecret", ossAppsecret); - - HttpEntity> requestEntity = new HttpEntity<>(body, headers); - - logger.debug("开始上传文件到OSS: {}, 大小: {} bytes", fileName, fileData.length); - ResponseEntity response = restTemplate.exchange( - ossUploadUrl, - HttpMethod.POST, - requestEntity, - ResultEntity.class - ); - - if (response.getStatusCode().is2xxSuccessful() && response.getBody() != null) { - ResultEntity result = response.getBody(); - if (result.getCode() == ResultEntity.StatusCode.SUCCESS.getCode()) { - String url = parseUrlFromContent(result.getContent()); - logger.debug("OSS返回URL: {}", url); - return url; - } else { - throw new RuntimeException("上传失败, code=" + result.getCode() + ", msg=" + result.getMsg()); - } - } else { - throw new RuntimeException("上传失败, HTTP状态码: " + response.getStatusCode()); - } - } catch (Exception e) { - logger.error("文件上传异常: {}", fileName, e); - throw new RuntimeException("文件上传失败: " + e.getMessage(), e); - } - } - - /** - * 从 ResultEntity.content 中解析文件URL - * - * 支持多种返回格式: - * 1. Map 对象: {"url": "http://xxx", "fileName": "xxx.wav"} - * 2. JSON 字符串: "{\"url\":\"http://xxx\"}" - * 3. 纯 URL 字符串: "http://xxx/xxx.wav" - * 4. 数组格式: [{"url": "http://xxx"}] - * 5. 相对路径: "voice/xxx/xxx.wav" - * - * @param content OSS 返回的内容 - * @return 解析后的文件路径或URL - */ - private String parseUrlFromContent(Object content) { - if (content == null) { - logger.warn("OSS 返回 content 为空"); - return ""; - } - - // 情况1:Map 对象 - if (content instanceof java.util.Map) { - java.util.Map map = (java.util.Map) content; - Object url = map.get("url"); - if (url != null) { - logger.debug("从 Map 解析到 URL: {}", url); - return url.toString(); - } - // 尝试其他可能的 key - Object fileUrl = map.get("fileUrl"); - if (fileUrl != null) { - logger.debug("从 Map 解析到 fileUrl: {}", fileUrl); - return fileUrl.toString(); - } - Object path = map.get("path"); - if (path != null) { - logger.debug("从 Map 解析到 path: {}", path); - return path.toString(); - } - } - - // 情况2:List/Array 对象(批量上传返回) - if (content instanceof java.util.List) { - java.util.List list = (java.util.List) content; - if (!list.isEmpty()) { - Object first = list.get(0); - if (first instanceof java.util.Map) { - Object url = ((java.util.Map) first).get("url"); - if (url != null) { - logger.debug("从 List 第一个元素解析到 URL: {}", url); - return url.toString(); - } - } - } - } - - // 情况3:JSON 字符串 - String contentStr = content.toString().trim(); - if (contentStr.startsWith("{") || contentStr.startsWith("[")) { - try { - // 尝试解析为 JSON - Object parsed = com.alibaba.fastjson2.JSON.parse(contentStr); - if (parsed instanceof java.util.Map) { - return parseUrlFromContent(parsed); // 递归解析 - } - if (parsed instanceof java.util.List) { - return parseUrlFromContent(parsed); // 递归解析 - } - } catch (Exception e) { - logger.debug("解析 JSON 失败: {}", e.getMessage()); - } - } - - // 情况4:直接是 URL 字符串(以 http:// 或 https:// 开头) - if (contentStr.startsWith("http://") || contentStr.startsWith("https://")) { - logger.debug("直接返回 URL 字符串: {}", contentStr); - return contentStr; - } - - // 情况5:相对路径(以 voice/ 开头) - if (contentStr.startsWith("voice/")) { - logger.debug("返回相对路径: {}", contentStr); - return contentStr; - } - - // 情况6:尝试从字符串中提取 URL - if (contentStr.contains("\"url\"")) { - try { - int start = contentStr.indexOf("\"url\":\"") + 7; - int end = contentStr.indexOf("\"", start); - if (start > 6 && end > start) { - String url = contentStr.substring(start, end); - logger.debug("从字符串提取 URL: {}", url); - return url; - } - } catch (Exception e) { - logger.warn("从字符串提取 URL 失败: {}", e.getMessage()); - } - } - - // 兜底:直接返回字符串 - logger.warn("无法解析 URL,直接返回 content: {}", contentStr); - return contentStr; - } - - /** - * 创建支持自定义SSL配置的RestTemplate - * 针对HTTPS请求,配置信任所有证书并关闭Hostname验证,以兼容自签名证书 - */ - private RestTemplate createRestTemplate() { - SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory() { - @Override - protected void prepareConnection(HttpURLConnection connection, String httpMethod) throws IOException { - if (ossUploadUrl.startsWith("https") && connection instanceof HttpsURLConnection) { - // HTTPS 特殊配置(如需要) - } - super.prepareConnection(connection, httpMethod); - } - }; - requestFactory.setBufferRequestBody(false); - return new RestTemplate(requestFactory); - } -} diff --git a/src/main/java/com/threecloud/dataserviceyy/util/OssFileService.java b/src/main/java/com/threecloud/dataserviceyy/util/OssFileService.java new file mode 100644 index 0000000..a443e3d --- /dev/null +++ b/src/main/java/com/threecloud/dataserviceyy/util/OssFileService.java @@ -0,0 +1,164 @@ +package com.threecloud.dataserviceyy.util; + +import com.threecloud.dataserviceyy.entity.OssFileResponse; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.core.io.ByteArrayResource; +import org.springframework.http.*; +import org.springframework.http.client.SimpleClientHttpRequestFactory; +import org.springframework.stereotype.Component; +import org.springframework.util.LinkedMultiValueMap; +import org.springframework.util.MultiValueMap; +import org.springframework.web.client.RestTemplate; + +import javax.annotation.PostConstruct; +import javax.net.ssl.HttpsURLConnection; +import java.io.IOException; +import java.net.HttpURLConnection; + +/** + * OSS文件存储服务客户端 + * + * 基于新OSS文件存储服务API对接,提供文件上传、预览等功能。 + * API文档地址: file:sanduoyun/developspace/dataservice-yy/OSS文件存储服务-技术对接文档.md + * + * 配置项: + * oss.base-url: OSS服务基础地址(如 http://53.1.211.7) + * oss.upload-path: 上传存储路径(如 voice/record/) + */ +@Component +public class OssFileService { + + private static final Logger logger = LoggerFactory.getLogger(OssFileService.class); + + @Value("${oss.base-url:http://53.1.211.7}") + private String ossBaseUrl; + + @Value("${oss.upload-path:voice/record/}") + private String defaultUploadPath; + + private RestTemplate restTemplate; + + @PostConstruct + public void init() { + restTemplate = createRestTemplate(); + logger.info("OSS文件服务初始化完成, 基础地址: {}", ossBaseUrl); + logger.info("OSS上传默认路径: {}", defaultUploadPath); + } + + /** + * 上传文件到OSS + * + * 调用 POST /oss/upload 接口。 + * 存储路径格式: {uploadPath}/{fileName} + * 示例: voice/record/xxx.wav + * + * @param fileData 文件字节数组 + * @param fileName 文件名(如 xxx.wav) + * @return OssFileResponse 包含 fileUrl(预览地址)和 fileKey(文件标识) + */ + public OssFileResponse uploadFile(byte[] fileData, String fileName) { + return uploadFile(fileData, fileName, defaultUploadPath); + } + + /** + * 上传文件到OSS(指定存储路径) + * + * @param fileData 文件字节数组 + * @param fileName 文件名 + * @param uploadPath 存储路径(如 voice/record/) + * @return OssFileResponse + */ + public OssFileResponse uploadFile(byte[] fileData, String fileName, String uploadPath) { + String url = ossBaseUrl + "/oss/upload"; + String path = uploadPath.endsWith("/") ? uploadPath : uploadPath + "/"; + + try { + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.MULTIPART_FORM_DATA); + + ByteArrayResource resource = new ByteArrayResource(fileData) { + @Override + public String getFilename() { + return fileName; + } + }; + + MultiValueMap body = new LinkedMultiValueMap<>(); + body.add("file", resource); + body.add("path", path); + + HttpEntity> requestEntity = new HttpEntity<>(body, headers); + + logger.debug("上传文件到OSS: url={}, path={}, fileName={}, size={} bytes", url, path, fileName, fileData.length); + ResponseEntity response = restTemplate.exchange( + url, + HttpMethod.POST, + requestEntity, + OssFileResponse.class + ); + + if (response.getStatusCode().is2xxSuccessful() && response.getBody() != null) { + OssFileResponse result = response.getBody(); + // fileUrl可能为相对路径(如 /upload/...),补全为完整URL + if (result.getFileUrl() != null && result.getFileUrl().startsWith("/")) { + String base = ossBaseUrl.endsWith("/") ? ossBaseUrl.substring(0, ossBaseUrl.length() - 1) : ossBaseUrl; + result.setFileUrl(base + result.getFileUrl()); + } + logger.info("文件上传成功: fileKey={}, fileUrl={}", result.getFileKey(), result.getFileUrl()); + return result; + } else { + throw new RuntimeException("上传失败, HTTP状态码: " + response.getStatusCode()); + } + } catch (Exception e) { + logger.error("文件上传异常: fileName={}", fileName, e); + throw new RuntimeException("文件上传失败: " + e.getMessage(), e); + } + } + + /** + * 获取文件预览URL + * + * 格式: {ossBaseUrl}/oss/preview?fileKey={fileKey} + * 浏览器可直接打开预览 + * + * @param fileKey 文件唯一标识(如 voice/record/xxx.wav) + * @return 预览URL + */ + public String getPreviewUrl(String fileKey) { + return ossBaseUrl + "/oss/preview?fileKey=" + fileKey; + } + + /** + * 创建支持自定义SSL配置的RestTemplate + */ + private RestTemplate createRestTemplate() { + SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory() { + @Override + protected void prepareConnection(HttpURLConnection connection, String httpMethod) throws IOException { + if (ossBaseUrl.startsWith("https") && connection instanceof HttpsURLConnection) { + HttpsURLConnection httpsConn = (HttpsURLConnection) connection; + try { + javax.net.ssl.TrustManager[] trustAllCerts = new javax.net.ssl.TrustManager[]{ + new javax.net.ssl.X509TrustManager() { + public java.security.cert.X509Certificate[] getAcceptedIssuers() { return null; } + public void checkClientTrusted(java.security.cert.X509Certificate[] certs, String authType) {} + public void checkServerTrusted(java.security.cert.X509Certificate[] certs, String authType) {} + } + }; + javax.net.ssl.SSLContext sc = javax.net.ssl.SSLContext.getInstance("TLS"); + sc.init(null, trustAllCerts, new java.security.SecureRandom()); + httpsConn.setSSLSocketFactory(sc.getSocketFactory()); + httpsConn.setHostnameVerifier((hostname, session) -> true); + } catch (Exception e) { + logger.warn("SSL配置失败: {}", e.getMessage()); + } + } + super.prepareConnection(connection, httpMethod); + } + }; + requestFactory.setBufferRequestBody(false); + return new RestTemplate(requestFactory); + } +} \ No newline at end of file diff --git a/src/main/java/com/threecloud/dataserviceyy/util/fileUtil.java b/src/main/java/com/threecloud/dataserviceyy/util/fileUtil.java deleted file mode 100644 index b6dffe9..0000000 --- a/src/main/java/com/threecloud/dataserviceyy/util/fileUtil.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.threecloud.dataserviceyy.util; - -import com.threecloud.dataserviceyy.entity.ResultEntity; -import org.springframework.core.io.ByteArrayResource; -import org.springframework.http.*; -import org.springframework.http.client.SimpleClientHttpRequestFactory; -import org.springframework.util.LinkedMultiValueMap; -import org.springframework.util.MultiValueMap; -import org.springframework.web.client.RestTemplate; -import org.springframework.web.multipart.MultipartFile; - -import javax.net.ssl.HttpsURLConnection; -import java.io.IOException; -import java.net.HttpURLConnection; - -public class fileUtil { - - /** - * 通过oss上传文件 - * @param mf - * @return ResultEntity - * @throws IOException - */ - private ResultEntity uploadFilesByOss(MultipartFile mf) throws IOException{ - String ossUrl = "http://127.0.0.1/apiOss";//baseOssConfigService.readOSsUrl();// OSS管理服务地址 - String ossPreviewUrl = "http://127.0.0.1/apiOssPreview/onlinePreview";//baseOssConfigService.readOSsPreviewUrl();// OSS预览服务地址 - String ossAppid = "371a3368-e28e-4ba3-95a3-c31c19cf0ad0";//baseOssConfigService.readOSsAppid();// OSS应用ID - String ossAppsecret = "06a6a80e-f9d2-4b3b-acc0-8d182c876074";//baseOssConfigService.readOSsAppsecret();// OSS应用密钥 - String ossAppcode = "dataservice-yy";//baseOssConfigService.readOSsAppcode();// OSS应用别名 - ResponseEntity responseEntity = null; - RestTemplate restTemplate = createRestTemplate(ossUrl); - HttpHeaders headers = new HttpHeaders(); - headers.setContentType(MediaType.MULTIPART_FORM_DATA); - MultiValueMap files = new LinkedMultiValueMap(); - //for (MultipartFile file : multipartFiles) { - ByteArrayResource byteResource = new ByteArrayResource(mf.getBytes()){ - @Override - public String getFilename() { - return mf.getOriginalFilename(); - } - }; - files.add("files", byteResource);//上传文件 - //} - files.add("appcode", ossAppcode);//项目编号 - files.set("appcode", ossAppcode); - files.set("appid", ossAppid); - files.set("appsecret", ossAppsecret); - HttpEntity> httpEntity = - new HttpEntity>(files,headers); - responseEntity = restTemplate.exchange(ossUrl + "/oss/fileUpload", HttpMethod.POST, httpEntity, ResultEntity.class); - - return responseEntity.getBody(); - } - - /** - * 创建支持自定义SSL配置的RestTemplate - * 针对HTTPS请求,配置信任所有证书并关闭Hostname验证,以兼容自签名证书 - */ - private RestTemplate createRestTemplate(String ossUrl) { - SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory() { - @Override - protected void prepareConnection(HttpURLConnection connection, String httpMethod) throws IOException { - if (ossUrl != null && ossUrl.startsWith("https") && connection instanceof HttpsURLConnection) { - - } - super.prepareConnection(connection, httpMethod); - } - }; - requestFactory.setBufferRequestBody(false); - return new RestTemplate(requestFactory); - } -} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 30d11c9..5ccdedc 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -18,7 +18,7 @@ logging: com.threecloud.dataserviceyy: DEBUG com.threecloud.dataserviceyy.service.VaaSyncService: DEBUG com.threecloud.dataserviceyy.util.VaaHttpUtil: DEBUG - com.threecloud.dataserviceyy.util.FileUploadUtil: INFO + com.threecloud.dataserviceyy.mapper: DEBUG org.springframework: WARN com.zaxxer.hikari: INFO