121 lines
5.5 KiB
Markdown
121 lines
5.5 KiB
Markdown
---
|
|
id: iotdb
|
|
title: Monitoring Apache IoTDB Database
|
|
sidebar_label: IoTDB Database
|
|
keywords: [open source monitoring tool, open source database monitoring tool, monitoring IotDB database metrics]
|
|
---
|
|
|
|
> Monitor the running status of the Apache IoTDB Internet of Things time series database (JVM-related), memory task clusters and other related Metrics.
|
|
|
|
## Operation before monitoring
|
|
|
|
You need to enable the `metrics` function in IoTDB, which will provide interface data in the form of prometheus metrics.
|
|
|
|
To enable the `metrics` function, refer to [Official Documentation](https://iotdb.apache.org/UserGuide/V0.13.x/Maintenance-Tools/Metric-Tool.html)
|
|
|
|
The main steps are as follows:
|
|
|
|
1. The metric collection is disabled by default, you need to modify the parameters in `conf/iotdb-metric.yml` first, then restart the server
|
|
|
|
```yaml
|
|
# Whether to start the monitoring module, the default is false
|
|
enableMetric: true
|
|
|
|
# Whether to enable operation delay statistics
|
|
enablePerformanceStat: false
|
|
|
|
# Data provision method, externally provide metrics data through jmx and prometheus protocol, optional parameters: [JMX, PROMETHEUS, IOTDB], IOTDB is closed by default.
|
|
metricReporterList:
|
|
- JMX
|
|
- PROMETHEUS
|
|
|
|
# The metric architecture used at the bottom layer, optional parameters: [MICROMETER, DROPWIZARD]
|
|
monitorType: MICROMETER
|
|
|
|
# Initialize the level of the metric, optional parameters: [CORE, IMPORTANT, NORMAL, ALL]
|
|
metricLevel: IMPORTANT
|
|
|
|
# Predefined metrics set, optional parameters: [JVM, LOGBACK, FILE, PROCESS, SYSTEM]
|
|
predefinedMetrics:
|
|
- JVM
|
|
- FILE
|
|
```
|
|
|
|
2. Restart IoTDB, open a browser or use curl to access http://servier_ip:9091/metrics, and you can see the metric data.
|
|
|
|
3. Add the corresponding IoTDB monitoring in HertzBeat.
|
|
|
|
### Configuration parameters
|
|
|
|
| Parameter name | Parameter help description |
|
|
|----------------|---------------------------------------------------|
|
|
| Monitoring Host | The peer IPV4, IPV6 or domain name to be monitored. Note ⚠️Without protocol header (eg: https://, http://). |
|
|
| Monitoring name | The name that identifies this monitoring, and the name needs to be unique. |
|
|
| Port | The port provided by the IoTDB Metric interface, which is 9091 by default. |
|
|
| Timeout | HTTP request query timeout |
|
|
| Acquisition Interval | Interval time for monitoring periodic data collection, in seconds, the minimum interval that can be set is 30 seconds |
|
|
| Whether to detect | Whether to detect and check the availability of monitoring before adding monitoring, and the operation of adding and modifying will continue after the detection is successful |
|
|
| Description Remarks | More remark information to identify and describe this monitoring, users can remark information here |
|
|
|
|
### Collect metrics
|
|
|
|
#### Metric collection: cluster_node_status
|
|
|
|
| Metric Name | Metric Unit | Metric Help Description |
|
|
|-------------|-------------|---------------------------------|
|
|
| name | None | Node name IP |
|
|
| status | None | Node status, 1=online 2=offline |
|
|
|
|
#### Metric collection: jvm_memory_committed_bytes
|
|
|
|
| Metric Name | Metric Unit | Metric Help Description |
|
|
|-------------|-------------|------------------------------------------------|
|
|
| area | none | heap memory or nonheap memory |
|
|
| id | none | memory block |
|
|
| value | MB | The memory size currently requested by the JVM |
|
|
|
|
#### Metric collection: jvm_memory_used_bytes
|
|
|
|
| Metric Name | Metric Unit | Metric Help Description |
|
|
|-------------|-------------|-------------------------------|
|
|
| area | none | heap memory or nonheap memory |
|
|
| id | none | memory block |
|
|
| value | MB | JVM used memory size |
|
|
|
|
#### Metric collection: jvm_threads_states_threads
|
|
|
|
| Metric Name | Metric Unit | Metric Help Description |
|
|
|-------------|-------------|---------------------------------------------------------|
|
|
| state | none | thread state |
|
|
| count | None | The number of threads corresponding to the thread state |
|
|
|
|
#### Index collection: quantity business data
|
|
|
|
| Metric Name | Metric Unit | Metric Help Description |
|
|
|--|------|----------------|
|
|
| name | None | Business name timeSeries/storageGroup/device/deviceUsingTemplate |
|
|
| type | none | type total/normal/template/template |
|
|
| value | None | The current timeSeries/storageGroup/device/The number of devices that have activated the template |
|
|
|
|
#### Metric collection: cache_hit cache
|
|
|
|
| Metric Name | Metric Unit | Metric Help Description |
|
|
| ----------- |------|-------------------------------|
|
|
| name | None | Cache name chunk/timeSeriesMeta/bloomFilter |
|
|
| value | % | chunk/timeSeriesMeta cache hit rate, bloomFilter interception rate |
|
|
|
|
#### Metric collection: queue task queue
|
|
|
|
| Metric Name | Metric Unit | Metric Help Description |
|
|
| ----------- |------|------------------------------|
|
|
| name | None | Queue name compaction_inner/compaction_cross/flush |
|
|
| status | none | status running/waiting |
|
|
| value | None | Number of tasks at current time |
|
|
|
|
#### Metric collection: thrift_connections
|
|
|
|
| Metric Name | Metric Unit | Metric Help Description |
|
|
|-------------|-------------|----------------------------------|
|
|
| name | None | name |
|
|
| connection | none | thrift current connection number |
|