stream2000 commented on code in PR #10101:
URL: https://github.com/apache/hudi/pull/10101#discussion_r1395063596
##########
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/metrics/HoodieMetrics.java:
##########
@@ -255,48 +277,57 @@ private void updateCommitTimingMetrics(long
commitEpochTimeInMs, long durationIn
Pair<Option<Long>, Option<Long>> eventTimePairMinMax =
metadata.getMinAndMaxEventTime();
if (eventTimePairMinMax.getLeft().isPresent()) {
long commitLatencyInMs = commitEpochTimeInMs + durationInMs -
eventTimePairMinMax.getLeft().get();
- metrics.registerGauge(getMetricsName(actionType, "commitLatencyInMs"),
commitLatencyInMs);
+ metrics.registerGauge(getMetricsName(actionType, COMMIT_LATENCY_STR),
commitLatencyInMs);
}
if (eventTimePairMinMax.getRight().isPresent()) {
long commitFreshnessInMs = commitEpochTimeInMs + durationInMs -
eventTimePairMinMax.getRight().get();
- metrics.registerGauge(getMetricsName(actionType,
"commitFreshnessInMs"), commitFreshnessInMs);
+ metrics.registerGauge(getMetricsName(actionType,
COMMIT_FRESHNESS_STR), commitFreshnessInMs);
}
- metrics.registerGauge(getMetricsName(actionType, "commitTime"),
commitEpochTimeInMs);
- metrics.registerGauge(getMetricsName(actionType, "duration"),
durationInMs);
+ metrics.registerGauge(getMetricsName(actionType, COMMIT_TIME_STR),
commitEpochTimeInMs);
+ metrics.registerGauge(getMetricsName(actionType, DURATION_STR),
durationInMs);
}
}
public void updateRollbackMetrics(long durationInMs, long numFilesDeleted) {
if (config.isMetricsOn()) {
LOG.info(
String.format("Sending rollback metrics (duration=%d,
numFilesDeleted=%d)", durationInMs, numFilesDeleted));
- metrics.registerGauge(getMetricsName("rollback", "duration"),
durationInMs);
- metrics.registerGauge(getMetricsName("rollback", "numFilesDeleted"),
numFilesDeleted);
+ metrics.registerGauge(getMetricsName(HoodieTimeline.ROLLBACK_ACTION,
DURATION_STR), durationInMs);
+ metrics.registerGauge(getMetricsName(HoodieTimeline.ROLLBACK_ACTION,
DELETE_FILES_NUM_STR), numFilesDeleted);
}
}
public void updateCleanMetrics(long durationInMs, int numFilesDeleted) {
if (config.isMetricsOn()) {
LOG.info(
String.format("Sending clean metrics (duration=%d,
numFilesDeleted=%d)", durationInMs, numFilesDeleted));
- metrics.registerGauge(getMetricsName("clean", "duration"), durationInMs);
- metrics.registerGauge(getMetricsName("clean", "numFilesDeleted"),
numFilesDeleted);
+ metrics.registerGauge(getMetricsName(HoodieTimeline.CLEAN_ACTION,
DURATION_STR), durationInMs);
+ metrics.registerGauge(getMetricsName(HoodieTimeline.CLEAN_ACTION,
DELETE_FILES_NUM_STR), numFilesDeleted);
+ }
+ }
+
+ public void updateArchiveMetrics(long durationInMs, int numFilesDeleted) {
+ if (config.isMetricsOn()) {
+ LOG.info(
+ String.format("Sending archive metrics (duration=%d,
numFilesDeleted=%d)", durationInMs, numFilesDeleted));
+ metrics.registerGauge(getMetricsName(ARCHIVE_ACTION, DURATION_STR),
durationInMs);
+ metrics.registerGauge(getMetricsName(ARCHIVE_ACTION,
DELETE_FILES_NUM_STR), numFilesDeleted);
}
}
public void updateFinalizeWriteMetrics(long durationInMs, long
numFilesFinalized) {
if (config.isMetricsOn()) {
LOG.info(String.format("Sending finalize write metrics (duration=%d,
numFilesFinalized=%d)", durationInMs,
numFilesFinalized));
- metrics.registerGauge(getMetricsName("finalize", "duration"),
durationInMs);
- metrics.registerGauge(getMetricsName("finalize", "numFilesFinalized"),
numFilesFinalized);
+ metrics.registerGauge(getMetricsName(FINALIZE_ACTION, DURATION_STR),
durationInMs);
+ metrics.registerGauge(getMetricsName(FINALIZE_ACTION,
FINALIZED_FILES_NUM_STR), numFilesFinalized);
}
}
public void updateIndexMetrics(final String action, final long durationInMs)
{
if (config.isMetricsOn()) {
LOG.info(String.format("Sending index metrics (%s.duration, %d)",
action, durationInMs));
Review Comment:
We can also update the string literal in the log here
##########
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/metrics/HoodieMetrics.java:
##########
@@ -92,20 +106,21 @@ public HoodieMetrics(HoodieWriteConfig config) {
this.tableName = config.getTableName();
if (config.isMetricsOn()) {
metrics = Metrics.getInstance(config);
- this.rollbackTimerName = getMetricsName("timer",
HoodieTimeline.ROLLBACK_ACTION);
- this.cleanTimerName = getMetricsName("timer",
HoodieTimeline.CLEAN_ACTION);
- this.commitTimerName = getMetricsName("timer",
HoodieTimeline.COMMIT_ACTION);
- this.deltaCommitTimerName = getMetricsName("timer",
HoodieTimeline.DELTA_COMMIT_ACTION);
- this.replaceCommitTimerName = getMetricsName("timer",
HoodieTimeline.REPLACE_COMMIT_ACTION);
- this.finalizeTimerName = getMetricsName("timer", "finalize");
- this.compactionTimerName = getMetricsName("timer",
HoodieTimeline.COMPACTION_ACTION);
- this.logCompactionTimerName = getMetricsName("timer",
HoodieTimeline.LOG_COMPACTION_ACTION);
- this.indexTimerName = getMetricsName("timer", "index");
- this.conflictResolutionTimerName = getMetricsName("timer",
"conflict_resolution");
- this.conflictResolutionSuccessCounterName = getMetricsName("counter",
"conflict_resolution.success");
- this.conflictResolutionFailureCounterName = getMetricsName("counter",
"conflict_resolution.failure");
- this.compactionRequestedCounterName = getMetricsName("counter",
"compaction.requested");
- this.compactionCompletedCounterName = getMetricsName("counter",
"compaction.completed");
+ this.rollbackTimerName = getMetricsName(TIMER_ACTION,
HoodieTimeline.ROLLBACK_ACTION);
+ this.cleanTimerName = getMetricsName(TIMER_ACTION,
HoodieTimeline.CLEAN_ACTION);
+ this.archiveTimerName = getMetricsName(TIMER_ACTION, ARCHIVE_ACTION);
+ this.commitTimerName = getMetricsName(TIMER_ACTION,
HoodieTimeline.COMMIT_ACTION);
+ this.deltaCommitTimerName = getMetricsName(TIMER_ACTION,
HoodieTimeline.DELTA_COMMIT_ACTION);
+ this.replaceCommitTimerName = getMetricsName(TIMER_ACTION,
HoodieTimeline.REPLACE_COMMIT_ACTION);
+ this.finalizeTimerName = getMetricsName(TIMER_ACTION, FINALIZE_ACTION);
+ this.compactionTimerName = getMetricsName(TIMER_ACTION,
HoodieTimeline.COMPACTION_ACTION);
+ this.logCompactionTimerName = getMetricsName(TIMER_ACTION,
HoodieTimeline.LOG_COMPACTION_ACTION);
+ this.indexTimerName = getMetricsName(TIMER_ACTION, INDEX_ACTION);
+ this.conflictResolutionTimerName = getMetricsName(TIMER_ACTION,
CONFLICT_RESOLUTION_STR);
+ this.conflictResolutionSuccessCounterName =
getMetricsName(COUNTER_ACTION, CONFLICT_RESOLUTION_STR + ".success");
Review Comment:
NIT:
CONFLICT_RESOLUTION_STR + ".success" -> CONFLICT_RESOLUTION_SUCCESS_STR
CONFLICT_RESOLUTION_STR + ".failure" -> CONFLICT_RESOLUTION_FAILURE_STR
.requested -> HoodieTimeline.REQUESTED_EXTENSION
.completed -> HoodieTimeline.COMPLETED_EXTENSION
##########
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/metrics/HoodieMetrics.java:
##########
@@ -255,48 +277,57 @@ private void updateCommitTimingMetrics(long
commitEpochTimeInMs, long durationIn
Pair<Option<Long>, Option<Long>> eventTimePairMinMax =
metadata.getMinAndMaxEventTime();
if (eventTimePairMinMax.getLeft().isPresent()) {
long commitLatencyInMs = commitEpochTimeInMs + durationInMs -
eventTimePairMinMax.getLeft().get();
- metrics.registerGauge(getMetricsName(actionType, "commitLatencyInMs"),
commitLatencyInMs);
+ metrics.registerGauge(getMetricsName(actionType, COMMIT_LATENCY_STR),
commitLatencyInMs);
}
if (eventTimePairMinMax.getRight().isPresent()) {
long commitFreshnessInMs = commitEpochTimeInMs + durationInMs -
eventTimePairMinMax.getRight().get();
- metrics.registerGauge(getMetricsName(actionType,
"commitFreshnessInMs"), commitFreshnessInMs);
+ metrics.registerGauge(getMetricsName(actionType,
COMMIT_FRESHNESS_STR), commitFreshnessInMs);
}
- metrics.registerGauge(getMetricsName(actionType, "commitTime"),
commitEpochTimeInMs);
- metrics.registerGauge(getMetricsName(actionType, "duration"),
durationInMs);
+ metrics.registerGauge(getMetricsName(actionType, COMMIT_TIME_STR),
commitEpochTimeInMs);
+ metrics.registerGauge(getMetricsName(actionType, DURATION_STR),
durationInMs);
}
}
public void updateRollbackMetrics(long durationInMs, long numFilesDeleted) {
if (config.isMetricsOn()) {
LOG.info(
String.format("Sending rollback metrics (duration=%d,
numFilesDeleted=%d)", durationInMs, numFilesDeleted));
- metrics.registerGauge(getMetricsName("rollback", "duration"),
durationInMs);
- metrics.registerGauge(getMetricsName("rollback", "numFilesDeleted"),
numFilesDeleted);
+ metrics.registerGauge(getMetricsName(HoodieTimeline.ROLLBACK_ACTION,
DURATION_STR), durationInMs);
+ metrics.registerGauge(getMetricsName(HoodieTimeline.ROLLBACK_ACTION,
DELETE_FILES_NUM_STR), numFilesDeleted);
}
}
public void updateCleanMetrics(long durationInMs, int numFilesDeleted) {
if (config.isMetricsOn()) {
LOG.info(
String.format("Sending clean metrics (duration=%d,
numFilesDeleted=%d)", durationInMs, numFilesDeleted));
- metrics.registerGauge(getMetricsName("clean", "duration"), durationInMs);
- metrics.registerGauge(getMetricsName("clean", "numFilesDeleted"),
numFilesDeleted);
+ metrics.registerGauge(getMetricsName(HoodieTimeline.CLEAN_ACTION,
DURATION_STR), durationInMs);
+ metrics.registerGauge(getMetricsName(HoodieTimeline.CLEAN_ACTION,
DELETE_FILES_NUM_STR), numFilesDeleted);
+ }
+ }
+
+ public void updateArchiveMetrics(long durationInMs, int numFilesDeleted) {
Review Comment:
numFilesDeleted -> numInstantsArchived?
##########
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/metrics/HoodieMetrics.java:
##########
@@ -255,48 +277,57 @@ private void updateCommitTimingMetrics(long
commitEpochTimeInMs, long durationIn
Pair<Option<Long>, Option<Long>> eventTimePairMinMax =
metadata.getMinAndMaxEventTime();
if (eventTimePairMinMax.getLeft().isPresent()) {
long commitLatencyInMs = commitEpochTimeInMs + durationInMs -
eventTimePairMinMax.getLeft().get();
- metrics.registerGauge(getMetricsName(actionType, "commitLatencyInMs"),
commitLatencyInMs);
+ metrics.registerGauge(getMetricsName(actionType, COMMIT_LATENCY_STR),
commitLatencyInMs);
Review Comment:
COMMIT_LATENCY_STR -> COMMIT_LATENCY_IN_MS_STR
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]