监控工具的部署可参考文档 监控面板部署 章节。
对于 Metric Name 为 name, Tags 为 K1=V1, ..., Kn=Vn 的监控指标有如下映射,其中 value 为具体值
| 监控指标类型 | 映射关系 |
|---|---|
| Counter | name_total{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”} value |
| AutoGauge、Gauge | name{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”} value |
| Histogram | name_max{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”} value name_sum{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”} value name_count{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”} value name{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”, quantile=“0.5”} value name{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”, quantile=“0.99”} value |
| Rate | name_total{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”} value name_total{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”, rate=“m1”} value name_total{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”, rate=“m5”} value name_total{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”, rate=“m15”} value name_total{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”, rate=“mean”} value |
| Timer | name_seconds_max{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”} value name_seconds_sum{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”} value name_seconds_count{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”} value name_seconds{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”, quantile=“0.5”} value value name_seconds{cluster=“clusterName”, nodeType=“nodeType”, nodeId=“nodeId”,k1=“V1” , ..., Kn=“Vn”, quantile=“0.99”} value |
dn_metric_reporter_list=PROMETHEUS dn_metric_level=CORE dn_metric_prometheus_reporter_port=9091
启动 IoTDB DataNode
打开浏览器或者用curl 访问 http://servier_ip:9091/metrics, 就能得到如下 metric 数据:
...
# HELP file_count
# TYPE file_count gauge
file_count{name="wal",} 0.0
file_count{name="unseq",} 0.0
file_count{name="seq",} 2.0
...
如上所示,IoTDB 对外暴露出标准的 Prometheus 格式的监控指标数据,可以使用 Prometheus 采集并存储监控指标,使用 Grafana 可视化监控指标。
IoTDB、Prometheus、Grafana三者的关系如下图所示:
从交互流程可以看出,我们需要做一些额外的工作来部署和配置Prometheus和Grafana。
比如,你可以对Prometheus进行如下的配置(部分参数可以自行调整)来从IoTDB获取监控数据
job_name: pull-metrics honor_labels: true honor_timestamps: true scrape_interval: 15s scrape_timeout: 10s metrics_path: /metrics scheme: http follow_redirects: true static_configs: - targets: - localhost:9091
更多细节可以参考下面的文档:
Prometheus从HTTP接口拉取metrics数据的配置说明
我们提供了Apache IoTDB Dashboard,支持统一集中式运维管理,可通过一个监控面板监控多个集群。
你可以在企业版中获取到 Dashboard 的 Json文件。
可以监控包括但不限于:
可以监控包括但不限于:
可以监控包括但不限于:
可以监控包括但不限于:
可以监控包括但不限于: