apache / hertzbeat

Apache HertzBeat(incubating) is a real-time monitoring system with agentless, performance cluster, prometheus-compatible, custom monitoring and status page building capabilities.
https://hertzbeat.apache.org/
Apache License 2.0
5.7k stars 986 forks source link

[BUG] After upgrading from 1.40 to 1.50, monitoring history cannot be displayed. #1609

Closed batmanpy closed 4 months ago

batmanpy commented 8 months ago

Is there an existing issue for this?

Current Behavior

我从1.40版本升级到1.50版本后,监控历史图表无显示,后台查看logs目录下提示, 2024-02-27 15:03:57.832 [http-nio-1157-exec-10] ERROR org.dromara.hertzbeat.warehouse.store.HistoryIotDbDataStorage Line:287 - select error history sql: SELECT used FROM root.hertzbeat.oracle.percentage.297149386516480."OA_FILE_CENTER_TABLESPACE" WHERE Time >= now() - 6h order by Time desc 2024-02-27 15:03:57.832 [http-nio-1157-exec-10] ERROR org.dromara.hertzbeat.warehouse.store.HistoryIotDbDataStorage Line:288 - 401: Error occurred while parsing SQL to physical plan: line 1:74 mismatched input '"OA_FILE_CENTER_TABLESPACE"' expecting {'*', '**', STRING_LITERAL, INTEGER_LITERAL, ID, QUTOED_ID_IN_NODE_NAME} org.apache.iotdb.rpc.StatementExecutionException: 401: Error occurred while parsing SQL to physical plan: line 1:74 mismatched input '"OA_FILE_CENTER_TABLESPACE"' expecting {'*', '**', STRING_LITERAL, INTEGER_LITERAL, ID, QUTOED_ID_IN_NODE_NAME} at org.apache.iotdb.rpc.RpcUtils.verifySuccess(RpcUtils.java:98) at org.apache.iotdb.rpc.RpcUtils.verifySuccessWithRedirection(RpcUtils.java:119) at org.apache.iotdb.session.SessionConnection.verifySuccessWithRedirectionWrapper(SessionConnection.java:526) at org.apache.iotdb.session.SessionConnection.executeQueryStatement(SessionConnection.java:370) at org.apache.iotdb.session.Session.executeStatementMayRedirect(Session.java:654) at org.apache.iotdb.session.Session.executeQueryStatement(Session.java:638) at org.apache.iotdb.session.pool.SessionPool.executeQueryStatement(SessionPool.java:2240) at org.dromara.hertzbeat.warehouse.store.HistoryIotDbDataStorage.handleHistorySelect(HistoryIotDbDataStorage.java:297) at org.dromara.hertzbeat.warehouse.store.HistoryIotDbDataStorage.getHistoryMetricData(HistoryIotDbDataStorage.java:282) at org.dromara.hertzbeat.warehouse.controller.MetricsDataController.getMetricHistoryData(MetricsDataController.java:186) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.base/java.lang.reflect.Method.invoke(Unknown Source) 1、我使用的是 IoTDB 2、1.40版本时配置历史数据成功,相关配置项如下 warehouse: store: jpa: enabled: false expire-time: 1h td-engine: enabled: false driver-class-name: com.taosdata.jdbc.rs.RestfulDriver url: jdbc:TAOS-RS://localhost:6041/hertzbeat username: root password: taosdata greptime: enabled: false endpoint: localhost:4001 iot-db: enabled: true host: 172.29.200.90 rpc-port: 6667 username: root password: root version: V_0_13 query-timeout-in-ms: -1 expire-time: '7776000000' influxdb: enabled: false server-url: http://127.0.0.1:8086 username: root password: root expire-time: '30d' replication: 1

store real-time metrics data, enable only one below

memory:
  enabled: true
  init-size: 1024
redis:
  enabled: false
  host: 127.0.0.1
  port: 6379
  password: 123456

请问我应该怎么操作?

Expected Behavior

No response

Steps To Reproduce

No response

Environment

HertzBeat version(s):

Debug logs

No response

Anything else?

No response

tomsun28 commented 8 months ago

hi, you can try use the apache iotdb 1.x instread of version: V_0_13, and update application.yml version: V_1_0 config.

    iot-db:
      enabled: true
      host: 127.0.0.1
      rpc-port: 6667
      username: root
      password: root
      # org.dromara.hertzbeat.warehouse.config.IotDbVersion: V_0_13 || V_1_0
      version: V_1_0
      query-timeout-in-ms: -1
      # 数据存储时间:默认'7776000000'(90天,单位为毫秒,-1代表永不过期)
      # data expire time, unit:ms, default '7776000000'(90 days, -1:never expire)
      expire-time: '7776000000'