You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ma...@apache.org on 2023/03/17 05:51:34 UTC
[iotdb] branch seperate-io-dashboard updated (0dd1029434 -> ef52e894d9)
This is an automated email from the ASF dual-hosted git repository.
marklau99 pushed a change to branch seperate-io-dashboard
in repository https://gitbox.apache.org/repos/asf/iotdb.git
discard 0dd1029434 seperate disk io dashboard apart
add d14f37af86 [IOTDB-5682] Fix the update of nodeId in Metrics (#9344)
add 81b365b9ce [IOTDB-5651] Fix compaction UT
add 53d06b296b [IoTDB-5636] Add round as built-in scalar function
add 637cd48803 [IOTDB-5683] Support aggregation function Mode for query
add 8c4f80046b [IOTDB-5671] Fix inode cannot be released after deletion causing waste of disk space
add b54a3ef136 [IOTDB-5684] Standardize log folder of ConfigNode's Simple consensus protocol
add eae04ab624 Fix dispatch result collection logic (#9323) (#9347)
add b167e06d85 fix erros of Community doc (#9355)
add 387404d1e3 [IOTDB-5618] Add RatisConsensus metrics in dashboard (#9212)
new ef52e894d9 seperate disk io dashboard apart
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (0dd1029434)
\
N -- N -- N refs/heads/seperate-io-dashboard (ef52e894d9)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../org/apache/iotdb/db/qp/sql/IdentifierParser.g4 | 1 +
.../org/apache/iotdb/db/qp/sql/IoTDBSqlParser.g4 | 1 +
.../antlr4/org/apache/iotdb/db/qp/sql/SqlLexer.g4 | 4 +
.../confignode/conf/ConfigNodeDescriptor.java | 2 +-
.../manager/consensus/ConsensusManager.java | 5 +-
.../iotdb/confignode/service/ConfigNode.java | 17 +-
.../iotdb/consensus/config/ConsensusConfig.java | 15 -
.../ratis/ApplicationStateMachineProxy.java | 30 +-
.../iotdb/consensus/ratis/RatisConsensus.java | 31 +-
.../org/apache/iotdb/consensus/ratis/Utils.java | 15 +
.../ratis/metrics/IoTDBMetricRegistry.java | 65 +-
.../ratis/metrics/MetricRegistryManager.java | 13 +-
.../consensus/ratis/metrics/RatisMetricSet.java | 79 +-
.../ratis/metrics/RatisMetricsManager.java | 84 +
.../apache/iotdb/consensus/iot/ReplicateTest.java | 2 -
.../apache/iotdb/consensus/iot/StabilityTest.java | 2 -
.../iotdb/consensus/ratis/RatisConsensusTest.java | 2 -
.../apache/iotdb/consensus/ratis/SnapshotTest.java | 11 +-
.../iotdb/consensus/simple/RecoveryTest.java | 2 -
docs/Community/Materials.md | 265 +-
.../Apache-IoTDB-ConfigNode-Dashboard.json | 3310 +++++++++------
.../Apache-IoTDB-DataNode-Dashboard.json | 4285 +++++++++++++-------
docs/UserGuide/Monitor-Alert/Metric-Tool.md | 77 +-
docs/UserGuide/Operators-Functions/Aggregation.md | 28 +-
docs/UserGuide/Operators-Functions/Mathematical.md | 65 +-
docs/zh/UserGuide/Monitor-Alert/Metric-Tool.md | 60 +-
.../UserGuide/Operators-Functions/Aggregation.md | 2 +-
.../UserGuide/Operators-Functions/Mathematical.md | 63 +-
docs/zh/UserGuide/Operators-Functions/Overview.md | 44 +-
.../itbase/constant/BuiltinScalarFunctionEnum.java | 1 +
.../BuiltinTimeSeriesGeneratingFunctionEnum.java | 1 -
.../apache/iotdb/itbase/constant/TestConstant.java | 4 +
.../iotdb/db/it/aggregation/IoTDBModeIT.java | 160 +
.../scalar/IoTDBRoundFunctionIT.java | 327 ++
.../iotdb/libudf/it/dprofile/DProfileIT.java | 3 +-
library-udf/src/assembly/tools/register-UDF.bat | 1 -
library-udf/src/assembly/tools/register-UDF.sh | 1 -
.../apache/iotdb/library/dprofile/UDAFMode.java | 178 -
.../apache/iotdb/metrics/config/MetricConfig.java | 7 +-
.../resources/conf/iotdb-common.properties | 4 +
.../iotdb/commons/service/metric/enums/Metric.java | 2 +
.../udf/builtin/BuiltinAggregationFunction.java | 5 +-
.../commons/udf/builtin/BuiltinScalarFunction.java | 1 +
.../BuiltinTimeSeriesGeneratingFunction.java | 1 -
.../iotdb/commons/udf/builtin/UDTFRound.java | 28 -
server/src/main/codegen/dataModel/AllDataType.tdd | 24 +-
.../src/main/codegen/templates/ModeAccumulator.ftl | 179 +
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 10 +
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 11 +-
.../db/consensus/DataRegionConsensusImpl.java | 2 -
.../db/consensus/SchemaRegionConsensusImpl.java | 2 -
.../org/apache/iotdb/db/constant/SqlConstant.java | 5 +-
.../execute/task/CrossSpaceCompactionTask.java | 7 +-
.../execute/task/InnerSpaceCompactionTask.java | 264 +-
.../readchunk/AlignedSeriesCompactionExecutor.java | 3 +-
.../db/mpp/aggregation/AccumulatorFactory.java | 21 +
.../SlidingWindowAggregatorFactory.java | 2 +
.../execution/executor/RegionWriteExecutor.java | 149 +-
.../plan/expression/multi/FunctionExpression.java | 2 +-
.../multi/builtin/BuiltInScalarFunctionHelper.java | 4 +-
.../BuiltInScalarFunctionHelperFactory.java | 3 +
...unctionHelper.java => RoundFunctionHelper.java} | 51 +-
.../iotdb/db/mpp/plan/parser/ASTVisitor.java | 15 +
.../metedata/write/CreateMultiTimeSeriesNode.java | 6 +-
.../plan/node/metedata/write/MeasurementGroup.java | 36 +-
.../db/mpp/plan/scheduler/AsyncPlanNodeSender.java | 34 +
.../scheduler/FragmentInstanceDispatcherImpl.java | 32 +-
...er.java => RoundFunctionColumnTransformer.java} | 47 +-
.../RoundFunctionTransformer.java} | 41 +-
.../java/org/apache/iotdb/db/service/DataNode.java | 7 +-
.../org/apache/iotdb/db/utils/SchemaUtils.java | 2 +
.../apache/iotdb/db/utils/TypeInferenceUtils.java | 3 +
thrift-commons/src/main/thrift/common.thrift | 3 +-
.../iotdb/tsfile/utils/ReadWriteIOUtils.java | 7 +
74 files changed, 6517 insertions(+), 3759 deletions(-)
create mode 100644 consensus/src/main/java/org/apache/iotdb/consensus/ratis/metrics/RatisMetricsManager.java
create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/aggregation/IoTDBModeIT.java
create mode 100644 integration-test/src/test/java/org/apache/iotdb/db/it/builtinfunction/scalar/IoTDBRoundFunctionIT.java
delete mode 100644 library-udf/src/main/java/org/apache/iotdb/library/dprofile/UDAFMode.java
delete mode 100644 node-commons/src/main/java/org/apache/iotdb/commons/udf/builtin/UDTFRound.java
create mode 100644 server/src/main/codegen/templates/ModeAccumulator.ftl
copy server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/multi/builtin/helper/{ReplaceFunctionHelper.java => RoundFunctionHelper.java} (62%)
copy server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/column/unary/scalar/{ReplaceFunctionColumnTransformer.java => RoundFunctionColumnTransformer.java} (55%)
copy server/src/main/java/org/apache/iotdb/db/mpp/transformation/dag/transformer/unary/{ArithmeticNegationTransformer.java => scalar/RoundFunctionTransformer.java} (54%)
[iotdb] 01/01: seperate disk io dashboard apart
Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
marklau99 pushed a commit to branch seperate-io-dashboard
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit ef52e894d9cd4d675dfee71fbfc120cf6966bc06
Author: Liu Xuxin <li...@outlook.com>
AuthorDate: Thu Mar 16 15:21:44 2023 +0800
seperate disk io dashboard apart
---
.../Apache-IoTDB-Disk-IO-Dashboard.json | 920 +++++++++++++++++++++
.../Apache-IoTDB-Network-Dashboard.json | 7 +-
.../iotdb/metrics/metricsets/disk/DiskMetrics.java | 29 +-
3 files changed, 938 insertions(+), 18 deletions(-)
diff --git a/docs/UserGuide/Monitor-Alert/Apache-IoTDB-Disk-IO-Dashboard.json b/docs/UserGuide/Monitor-Alert/Apache-IoTDB-Disk-IO-Dashboard.json
new file mode 100644
index 0000000000..d7d64792ae
--- /dev/null
+++ b/docs/UserGuide/Monitor-Alert/Apache-IoTDB-Disk-IO-Dashboard.json
@@ -0,0 +1,920 @@
+{
+ "__inputs": [
+ {
+ "name": "DS_PROMETHEUS",
+ "label": "Prometheus",
+ "description": "",
+ "type": "datasource",
+ "pluginId": "prometheus",
+ "pluginName": "Prometheus"
+ }
+ ],
+ "__elements": {},
+ "__requires": [
+ {
+ "type": "grafana",
+ "id": "grafana",
+ "name": "Grafana",
+ "version": "9.3.6"
+ },
+ {
+ "type": "datasource",
+ "id": "prometheus",
+ "name": "Prometheus",
+ "version": "1.0.0"
+ },
+ {
+ "type": "panel",
+ "id": "timeseries",
+ "name": "Time series",
+ "version": ""
+ }
+ ],
+ "annotations": {
+ "list": [
+ {
+ "builtIn": 1,
+ "datasource": {
+ "type": "grafana",
+ "uid": "-- Grafana --"
+ },
+ "enable": true,
+ "hide": true,
+ "iconColor": "rgba(0, 211, 255, 1)",
+ "name": "Annotations & Alerts",
+ "target": {
+ "limit": 100,
+ "matchAny": false,
+ "tags": [],
+ "type": "dashboard"
+ },
+ "type": "dashboard"
+ }
+ ]
+ },
+ "editable": true,
+ "fiscalYearStartMonth": 0,
+ "graphTooltip": 0,
+ "id": null,
+ "links": [],
+ "liveNow": false,
+ "panels": [
+ {
+ "collapsed": true,
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 0
+ },
+ "id": 18,
+ "panels": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "axisSoftMax": 1,
+ "axisSoftMin": 0,
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "line+area"
+ }
+ },
+ "mappings": [],
+ "max": 1,
+ "min": 0,
+ "thresholds": {
+ "mode": "percentage",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "percentunit"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 1
+ },
+ "id": 2,
+ "options": {
+ "legend": {
+ "calcs": [
+ "mean"
+ ],
+ "displayMode": "table",
+ "placement": "right",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "asc"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "expr": "disk_io_busy_percentage{instance=~\"$instance\", disk_id=~\"$disk\"}",
+ "legendFormat": "{{disk_id}}",
+ "range": true,
+ "refId": "A"
+ }
+ ],
+ "title": "Disk I/O Busy Rate",
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ },
+ "unit": "KBs"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 1
+ },
+ "id": 4,
+ "options": {
+ "legend": {
+ "calcs": [
+ "mean"
+ ],
+ "displayMode": "list",
+ "placement": "right",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "asc"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "expr": "rate(disk_io_size{instance=~\"$instance\", disk_id=~\"$disk\"}[1m])",
+ "legendFormat": "{{disk_id}}-{{type}}",
+ "range": true,
+ "refId": "A"
+ }
+ ],
+ "title": "Disk I/O Throughput",
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ },
+ "unit": "iops"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 9
+ },
+ "id": 6,
+ "options": {
+ "legend": {
+ "calcs": [
+ "mean"
+ ],
+ "displayMode": "table",
+ "placement": "right",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "asc"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "expr": "rate(disk_io_ops{instance=~\"$instance\", disk_id=~\"$disk\"}[1m])",
+ "legendFormat": "{{disk_id}}-{{type}}",
+ "range": true,
+ "refId": "A"
+ }
+ ],
+ "title": "Disk I/O Ops",
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ },
+ "unit": "ms"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 9
+ },
+ "id": 10,
+ "options": {
+ "legend": {
+ "calcs": [
+ "mean"
+ ],
+ "displayMode": "table",
+ "placement": "right",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "asc"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "expr": "disk_io_avg_time{instance=~\"$instance\", disk_id=~\"$disk\"}",
+ "legendFormat": "{{disk_id}}-{{type}}",
+ "range": true,
+ "refId": "A"
+ }
+ ],
+ "title": "Disk Per I/O Avg Time",
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ },
+ "unit": "bytes"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 17
+ },
+ "id": 12,
+ "options": {
+ "legend": {
+ "calcs": [
+ "mean"
+ ],
+ "displayMode": "table",
+ "placement": "right",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "asc"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "expr": "disk_io_avg_size{instance=~\"$instance\", disk_id=~\"$disk\"}",
+ "legendFormat": "{{disk_id}}-{{type}}",
+ "range": true,
+ "refId": "A"
+ }
+ ],
+ "title": "Disk I/O Avg Size",
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 17
+ },
+ "id": 8,
+ "options": {
+ "legend": {
+ "calcs": [
+ "mean"
+ ],
+ "displayMode": "list",
+ "placement": "right",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "asc"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "expr": "disk_io_avg_queue_size{instance=~\"$instance\", disk_id=~\"$disk\"}",
+ "legendFormat": "{{disk_id}}",
+ "range": true,
+ "refId": "A"
+ }
+ ],
+ "title": "Disk I/O Avg Queue Size",
+ "type": "timeseries"
+ }
+ ],
+ "title": "Disk Status",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 1
+ },
+ "id": 20,
+ "panels": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ },
+ "unit": "KBs"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 1
+ },
+ "id": 16,
+ "options": {
+ "legend": {
+ "calcs": [
+ "mean"
+ ],
+ "displayMode": "table",
+ "placement": "right",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "asc"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "expr": "rate(process_io_size{instance=~\"$instance\"}[1m])",
+ "legendFormat": "{{from}}-{{name}}",
+ "range": true,
+ "refId": "A"
+ }
+ ],
+ "title": "Process I/O Throughput",
+ "type": "timeseries"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisCenteredZero": false,
+ "axisColorMode": "text",
+ "axisLabel": "",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 0,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "linear",
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "auto",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ },
+ "unit": "ops"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 1
+ },
+ "id": 14,
+ "options": {
+ "legend": {
+ "calcs": [
+ "mean"
+ ],
+ "displayMode": "table",
+ "placement": "right",
+ "showLegend": true
+ },
+ "tooltip": {
+ "mode": "multi",
+ "sort": "asc"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "editorMode": "code",
+ "expr": "rate(process_io_ops{instance=~\"$instance\"}[1m])",
+ "legendFormat": "{{from}}-{{name}}",
+ "range": true,
+ "refId": "A"
+ }
+ ],
+ "title": "I/O System Call Rate",
+ "type": "timeseries"
+ }
+ ],
+ "title": "Process",
+ "type": "row"
+ }
+ ],
+ "refresh": "5s",
+ "schemaVersion": 37,
+ "style": "dark",
+ "tags": [],
+ "templating": {
+ "list": [
+ {
+ "current": {},
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "definition": "label_values(job)",
+ "hide": 0,
+ "includeAll": false,
+ "multi": false,
+ "name": "job",
+ "options": [],
+ "query": {
+ "query": "label_values(job)",
+ "refId": "StandardVariableQuery"
+ },
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {},
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "definition": "label_values(up{job=~\"$job\"},instance)",
+ "description": "",
+ "hide": 0,
+ "includeAll": false,
+ "multi": false,
+ "name": "instance",
+ "options": [],
+ "query": {
+ "query": "label_values(up{job=~\"$job\"},instance)",
+ "refId": "StandardVariableQuery"
+ },
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {},
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "definition": "label_values(disk_id)",
+ "hide": 0,
+ "includeAll": false,
+ "multi": true,
+ "name": "disk",
+ "options": [],
+ "query": {
+ "query": "label_values(disk_id)",
+ "refId": "StandardVariableQuery"
+ },
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ }
+ ]
+ },
+ "time": {
+ "from": "now-5m",
+ "to": "now"
+ },
+ "timepicker": {
+ "refresh_intervals": [
+ "15s",
+ "30s",
+ "1m",
+ "5m",
+ "15m",
+ "30m"
+ ]
+ },
+ "timezone": "",
+ "title": "Apache IoTDB Disk I/O Dashboard",
+ "uid": "TrJ0dsaVk",
+ "version": 12,
+ "weekStart": ""
+}
\ No newline at end of file
diff --git a/docs/UserGuide/Monitor-Alert/Apache-IoTDB-Network-Dashboard.json b/docs/UserGuide/Monitor-Alert/Apache-IoTDB-Network-Dashboard.json
index f63d532a7b..66899f7b21 100644
--- a/docs/UserGuide/Monitor-Alert/Apache-IoTDB-Network-Dashboard.json
+++ b/docs/UserGuide/Monitor-Alert/Apache-IoTDB-Network-Dashboard.json
@@ -415,8 +415,7 @@
"mode": "absolute",
"steps": [
{
- "color": "green",
- "value": null
+ "color": "green"
}
]
}
@@ -497,7 +496,7 @@
"description": "",
"hide": 0,
"includeAll": false,
- "multi": false,
+ "multi": true,
"name": "iface",
"options": [],
"query": {
@@ -529,6 +528,6 @@
"timezone": "",
"title": "Apache IoTDB Network Dashboard",
"uid": "AXEPYc-Vz",
- "version": 19,
+ "version": 2,
"weekStart": ""
}
\ No newline at end of file
diff --git a/metrics/interface/src/main/java/org/apache/iotdb/metrics/metricsets/disk/DiskMetrics.java b/metrics/interface/src/main/java/org/apache/iotdb/metrics/metricsets/disk/DiskMetrics.java
index 1236ce8367..8184672fb8 100644
--- a/metrics/interface/src/main/java/org/apache/iotdb/metrics/metricsets/disk/DiskMetrics.java
+++ b/metrics/interface/src/main/java/org/apache/iotdb/metrics/metricsets/disk/DiskMetrics.java
@@ -42,6 +42,7 @@ public class DiskMetrics implements IMetricSet {
private static final String ACTUAL_WRITE = "actual_write";
private static final String ACTUAL_READ = "actual_read";
private static final String TYPE = "type";
+ private static final String DISK_ID = "disk_id";
private static final String NAME = "name";
private static final String FROM = "from";
private static final String DISK_IO_SIZE = "disk_io_size";
@@ -71,7 +72,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getReadDataSizeForDisk().getOrDefault(diskID, 0.0),
TYPE,
READ,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_SIZE,
@@ -80,7 +81,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getWriteDataSizeForDisk().getOrDefault(diskID, 0.0),
TYPE,
WRITE,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_OPS,
@@ -89,7 +90,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getReadOperationCountForDisk().getOrDefault(diskID, 0L),
TYPE,
READ,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_OPS,
@@ -98,7 +99,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getWriteOperationCountForDisk().getOrDefault(diskID, 0L),
TYPE,
WRITE,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_OPS,
@@ -107,7 +108,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getMergedReadOperationForDisk().getOrDefault(diskID, 0L),
TYPE,
MERGED_READ,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_OPS,
@@ -116,7 +117,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getMergedWriteOperationForDisk().getOrDefault(diskID, 0L),
TYPE,
MERGED_WRITE,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_TIME,
@@ -125,7 +126,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getReadCostTimeForDisk().getOrDefault(diskID, 0L),
TYPE,
READ,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_TIME,
@@ -134,7 +135,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getWriteCostTimeForDisk().getOrDefault(diskID, 0L),
TYPE,
WRITE,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_AVG_TIME,
@@ -143,7 +144,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getAvgReadCostTimeOfEachOpsForDisk().getOrDefault(diskID, 0.0),
TYPE,
READ,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_AVG_TIME,
@@ -152,7 +153,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getAvgWriteCostTimeOfEachOpsForDisk().getOrDefault(diskID, 0.0),
TYPE,
WRITE,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_AVG_SIZE,
@@ -161,7 +162,7 @@ public class DiskMetrics implements IMetricSet {
x -> x.getAvgSizeOfEachReadForDisk().getOrDefault(diskID, 0.0),
TYPE,
READ,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_AVG_SIZE,
@@ -170,21 +171,21 @@ public class DiskMetrics implements IMetricSet {
x -> x.getAvgSizeOfEachWriteForDisk().getOrDefault(diskID, 0.0),
TYPE,
WRITE,
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_BUSY_PERCENTAGE,
MetricLevel.IMPORTANT,
diskMetricsManager,
x -> x.getIoUtilsPercentage().getOrDefault(diskID, 0.0),
- NAME,
+ DISK_ID,
diskID);
metricService.createAutoGauge(
DISK_IO_QUEUE_SIZE,
MetricLevel.IMPORTANT,
diskMetricsManager,
x -> x.getQueueSizeForDisk().getOrDefault(diskID, 0.0),
- NAME,
+ DISK_ID,
diskID);
}