This is an automated email from the ASF dual-hosted git repository.
marklau99 pushed a commit to branch IOTDB-5517
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/IOTDB-5517 by this push:
new 5e5f32829a update dashboard
5e5f32829a is described below
commit 5e5f32829a751de39598fbc319cdd5e3a5574f71
Author: Liu Xuxin <[email protected]>
AuthorDate: Tue Feb 21 16:53:02 2023 +0800
update dashboard
---
.../Apache-IoTDB-ConfigNode-Dashboard.json | 11 +++++---
.../Apache-IoTDB-DataNode-Dashboard.json | 31 +++++++++++-----------
.../metricsets/disk/LinuxDiskMetricsManager.java | 21 ++++++++++-----
3 files changed, 38 insertions(+), 25 deletions(-)
diff --git
a/docs/UserGuide/Monitor-Alert/Apache-IoTDB-ConfigNode-Dashboard.json
b/docs/UserGuide/Monitor-Alert/Apache-IoTDB-ConfigNode-Dashboard.json
index 6cb23d6e6a..894477d777 100644
--- a/docs/UserGuide/Monitor-Alert/Apache-IoTDB-ConfigNode-Dashboard.json
+++ b/docs/UserGuide/Monitor-Alert/Apache-IoTDB-ConfigNode-Dashboard.json
@@ -2528,8 +2528,9 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
+ "editorMode": "code",
"exemplar": true,
- "expr": "disk_io_busy_percentage{instance=~\"$instance\"}/10000",
+ "expr": "disk_io_busy_percentage{instance=~\"$instance\"}",
"instant": false,
"interval": "",
"legendFormat": "{{name}}",
@@ -2896,10 +2897,12 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
+ "editorMode": "code",
"exemplar": true,
- "expr": "disk_io_avg_time{instance=~\"$instance\"}/1000000",
+ "expr": "disk_io_avg_time{instance=~\"$instance\"}",
"interval": "",
"legendFormat": "{{name}}-{{type}}",
+ "range": true,
"refId": "A"
}
],
@@ -3079,7 +3082,7 @@
},
"editorMode": "code",
"exemplar": true,
- "expr": "disk_io_avg_queue_size{instance=~\"$instance\"}/10000",
+ "expr": "disk_io_avg_queue_size{instance=~\"$instance\"}",
"interval": "",
"legendFormat": "{{name}}",
"range": true,
@@ -3345,6 +3348,6 @@
"timezone": "browser",
"title": "Apache IoTDB ConfigNode Dashboard",
"uid": "TbEVYRw7T",
- "version": 3,
+ "version": 2,
"weekStart": ""
}
\ No newline at end of file
diff --git a/docs/UserGuide/Monitor-Alert/Apache-IoTDB-DataNode-Dashboard.json
b/docs/UserGuide/Monitor-Alert/Apache-IoTDB-DataNode-Dashboard.json
index 9286baca04..8cb1e9231f 100644
--- a/docs/UserGuide/Monitor-Alert/Apache-IoTDB-DataNode-Dashboard.json
+++ b/docs/UserGuide/Monitor-Alert/Apache-IoTDB-DataNode-Dashboard.json
@@ -14056,10 +14056,12 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
+ "editorMode": "code",
"exemplar": true,
- "expr": "disk_io_busy_percentage{instance=~\"$instance\"}/10000",
+ "expr": "disk_io_busy_percentage{instance=~\"$instance\"}",
"interval": "",
"legendFormat": "{{name}}",
+ "range": true,
"refId": "A"
}
],
@@ -14387,8 +14389,7 @@
"mode": "absolute",
"steps": [
{
- "color": "green",
- "value": null
+ "color": "green"
}
]
},
@@ -14426,10 +14427,12 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
+ "editorMode": "code",
"exemplar": true,
- "expr": "disk_io_avg_time{instance=~\"$instance\"}/1000000",
+ "expr": "disk_io_avg_time{instance=~\"$instance\"}",
"interval": "",
"legendFormat": "{{name}}-{{type}}",
+ "range": true,
"refId": "A"
}
],
@@ -14481,8 +14484,7 @@
"mode": "absolute",
"steps": [
{
- "color": "green",
- "value": null
+ "color": "green"
}
]
},
@@ -14506,7 +14508,7 @@
"placement": "right",
"showLegend": true,
"sortBy": "Mean",
- "sortDesc": true
+ "sortDesc": false
},
"tooltip": {
"mode": "multi",
@@ -14574,8 +14576,7 @@
"mode": "absolute",
"steps": [
{
- "color": "green",
- "value": null
+ "color": "green"
}
]
}
@@ -14613,7 +14614,7 @@
},
"editorMode": "code",
"exemplar": true,
- "expr": "disk_io_queue_avg_size{instance=~\"$instance\"}/10000",
+ "expr": "disk_io_avg_queue_size{instance=~\"$instance\"}",
"interval": "",
"legendFormat": "{{name}}",
"range": true,
@@ -14668,8 +14669,7 @@
"mode": "absolute",
"steps": [
{
- "color": "green",
- "value": null
+ "color": "green"
}
]
},
@@ -14704,10 +14704,12 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
+ "editorMode": "code",
"exemplar": true,
"expr": "rate(process_io_ops{instance=~\"$instance\"}[1m])",
"interval": "",
"legendFormat": "{{from}}-{{name}}",
+ "range": true,
"refId": "A"
}
],
@@ -14759,8 +14761,7 @@
"mode": "absolute",
"steps": [
{
- "color": "green",
- "value": null
+ "color": "green"
}
]
},
@@ -14806,7 +14807,7 @@
"type": "timeseries"
}
],
- "refresh": "15s",
+ "refresh": false,
"schemaVersion": 37,
"style": "dark",
"tags": [
diff --git
a/metrics/interface/src/main/java/org/apache/iotdb/metrics/metricsets/disk/LinuxDiskMetricsManager.java
b/metrics/interface/src/main/java/org/apache/iotdb/metrics/metricsets/disk/LinuxDiskMetricsManager.java
index fd8cc66060..35c3bd5b0a 100644
---
a/metrics/interface/src/main/java/org/apache/iotdb/metrics/metricsets/disk/LinuxDiskMetricsManager.java
+++
b/metrics/interface/src/main/java/org/apache/iotdb/metrics/metricsets/disk/LinuxDiskMetricsManager.java
@@ -192,10 +192,11 @@ public class LinuxDiskMetricsManager implements
IDiskMetricsManager {
public Map<String, Double> getAvgReadCostTimeOfEachOpsForDisk() {
Map<String, Double> avgReadTimeCostMap = new HashMap<>(diskIdSet.size());
for (Map.Entry<String, Long> readCostEntry :
incrementReadTimeCostForDisk.entrySet()) {
- long writeOpsCount =
-
incrementReadOperationCountForDisk.getOrDefault(readCostEntry.getKey(), 1L);
+ // use Long.max to avoid NaN
+ long readOpsCount =
+
Long.max(incrementReadOperationCountForDisk.getOrDefault(readCostEntry.getKey(),
1L), 1L);
avgReadTimeCostMap.put(
- readCostEntry.getKey(), (double) readCostEntry.getValue() /
writeOpsCount);
+ readCostEntry.getKey(), (double) readCostEntry.getValue() /
readOpsCount);
}
return avgReadTimeCostMap;
}
@@ -204,8 +205,10 @@ public class LinuxDiskMetricsManager implements
IDiskMetricsManager {
public Map<String, Double> getAvgWriteCostTimeOfEachOpsForDisk() {
Map<String, Double> avgWriteTimeCostMap = new HashMap<>(diskIdSet.size());
for (Map.Entry<String, Long> writeCostEntry :
incrementWriteTimeCostForDisk.entrySet()) {
+ // use Long.max to avoid NaN
long writeOpsCount =
-
incrementWriteOperationCountForDisk.getOrDefault(writeCostEntry.getKey(), 1L);
+ Long.max(
+
incrementWriteOperationCountForDisk.getOrDefault(writeCostEntry.getKey(), 1L),
1L);
avgWriteTimeCostMap.put(
writeCostEntry.getKey(), (double) writeCostEntry.getValue() /
writeOpsCount);
}
@@ -216,8 +219,11 @@ public class LinuxDiskMetricsManager implements
IDiskMetricsManager {
public Map<String, Double> getAvgSizeOfEachReadForDisk() {
Map<String, Double> avgSizeOfReadMap = new HashMap<>(diskIdSet.size());
for (Map.Entry<String, Long> readSectorSizeEntry :
incrementReadSectorCountForDisk.entrySet()) {
+ // use Long.max to avoid NaN
long readOpsCount =
-
incrementReadOperationCountForDisk.getOrDefault(readSectorSizeEntry.getKey(),
1L);
+ Long.max(
+
incrementReadOperationCountForDisk.getOrDefault(readSectorSizeEntry.getKey(),
1L),
+ 1L);
int sectorSize =
diskSectorSizeMap.getOrDefault(readSectorSizeEntry.getKey(),
DEFAULT_SECTOR_SIZE);
avgSizeOfReadMap.put(
@@ -232,8 +238,11 @@ public class LinuxDiskMetricsManager implements
IDiskMetricsManager {
Map<String, Double> avgSizeOfWriteMap = new HashMap<>(diskIdSet.size());
for (Map.Entry<String, Long> writeSectorSizeEntry :
incrementWriteSectorCountForDisk.entrySet()) {
+ // use Long.max to avoid NaN
long writeOpsCount =
-
incrementWriteOperationCountForDisk.getOrDefault(writeSectorSizeEntry.getKey(),
1L);
+ Long.max(
+
incrementWriteOperationCountForDisk.getOrDefault(writeSectorSizeEntry.getKey(),
1L),
+ 1L);
int sectorSize =
diskSectorSizeMap.getOrDefault(writeSectorSizeEntry.getKey(),
DEFAULT_SECTOR_SIZE);
avgSizeOfWriteMap.put(