in iotdb-core/datanode/src/main/java/org/apache/iotdb/db/service/metrics/CompactionMetrics.java [330:528]
private void bindTaskInfo(AbstractMetricService metricService) {
seqCompactionCostTimer =
metricService.getOrCreateTimer(
Metric.COST_TASK.toString(),
MetricLevel.CORE,
Tag.NAME.toString(),
"inner_seq_compaction");
unSeqCompactionCostTimer =
metricService.getOrCreateTimer(
Metric.COST_TASK.toString(),
MetricLevel.CORE,
Tag.NAME.toString(),
"inner_unseq_compaction");
crossCompactionCostTimer =
metricService.getOrCreateTimer(
Metric.COST_TASK.toString(), MetricLevel.CORE, Tag.NAME.toString(), "cross_compaction");
insertionCompactionCostTimer =
metricService.getOrCreateTimer(
Metric.COST_TASK.toString(),
MetricLevel.CORE,
Tag.NAME.toString(),
"insertion_compaction");
settleCompactionCostTimer =
metricService.getOrCreateTimer(
Metric.COST_TASK.toString(),
MetricLevel.CORE,
Tag.NAME.toString(),
"settle_compaction");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return waitingCrossCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_cross",
Tag.STATUS.toString(),
"waiting");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return waitingInsertionCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_insertion",
Tag.STATUS.toString(),
"waiting");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return waitingSeqInnerCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_inner_seq",
Tag.STATUS.toString(),
"waiting");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return waitingUnseqInnerCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_inner_unseq",
Tag.STATUS.toString(),
"waiting");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return waitingSettleCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_settle",
Tag.STATUS.toString(),
"waiting");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return runningCrossCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_cross",
Tag.STATUS.toString(),
"running");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return runningInsertionCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_insertion",
Tag.STATUS.toString(),
"running");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return runningSeqInnerCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_inner_seq",
Tag.STATUS.toString(),
"running");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return runningUnseqInnerCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_inner_unseq",
Tag.STATUS.toString(),
"running");
metricService.createAutoGauge(
Metric.QUEUE.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return runningSettleCompactionTaskNum.get();
},
Tag.NAME.toString(),
"compaction_settle",
Tag.STATUS.toString(),
"running");
metricService.createAutoGauge(
Metric.COMPACTION_TASK_COUNT.toString(),
MetricLevel.IMPORTANT,
this,
metrics -> {
updateCompactionTaskInfo();
return finishSeqInnerCompactionTaskNum.get();
},
Tag.NAME.toString(),
"inner_seq");
metricService.createAutoGauge(
Metric.COMPACTION_TASK_COUNT.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return finishUnseqInnerCompactionTaskNum.get();
},
Tag.NAME.toString(),
"inner_unseq");
metricService.createAutoGauge(
Metric.COMPACTION_TASK_COUNT.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return finishCrossCompactionTaskNum.get();
},
Tag.NAME.toString(),
"cross");
metricService.createAutoGauge(
Metric.COMPACTION_TASK_COUNT.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return finishInsertionCompactionTaskNum.get();
},
Tag.NAME.toString(),
"insertion");
metricService.createAutoGauge(
Metric.COMPACTION_TASK_COUNT.toString(),
MetricLevel.IMPORTANT,
this,
(metrics) -> {
updateCompactionTaskInfo();
return finishSettleCompactionTaskNum.get();
},
Tag.NAME.toString(),
"settle");
}