in src/replica/replica_stub.cpp [221:565]
void replica_stub::install_perf_counters()
{
_counter_replicas_count.init_app_counter(
"eon.replica_stub", "replica(Count)", COUNTER_TYPE_NUMBER, "# in replica_stub._replicas");
_counter_replicas_opening_count.init_app_counter("eon.replica_stub",
"opening.replica(Count)",
COUNTER_TYPE_NUMBER,
"# in replica_stub._opening_replicas");
_counter_replicas_closing_count.init_app_counter("eon.replica_stub",
"closing.replica(Count)",
COUNTER_TYPE_NUMBER,
"# in replica_stub._closing_replicas");
_counter_replicas_commit_qps.init_app_counter("eon.replica_stub",
"replicas.commit.qps",
COUNTER_TYPE_RATE,
"server-level commit throughput");
_counter_replicas_learning_count.init_app_counter("eon.replica_stub",
"replicas.learning.count",
COUNTER_TYPE_NUMBER,
"current learning count");
_counter_replicas_learning_max_duration_time_ms.init_app_counter(
"eon.replica_stub",
"replicas.learning.max.duration.time(ms)",
COUNTER_TYPE_NUMBER,
"current learning max duration time(ms)");
_counter_replicas_learning_max_copy_file_size.init_app_counter(
"eon.replica_stub",
"replicas.learning.max.copy.file.size",
COUNTER_TYPE_NUMBER,
"current learning max copy file size");
_counter_replicas_learning_recent_start_count.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.start.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current learning start count in the recent period");
_counter_replicas_learning_recent_round_start_count.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.round.start.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning round start count in the recent period");
_counter_replicas_learning_recent_copy_file_count.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.copy.file.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning copy file count in the recent period");
_counter_replicas_learning_recent_copy_file_size.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.copy.file.size",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning copy file size in the recent period");
_counter_replicas_learning_recent_copy_buffer_size.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.copy.buffer.size",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning copy buffer size in the recent period");
_counter_replicas_learning_recent_learn_cache_count.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.learn.cache.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning LT_CACHE count in the recent period");
_counter_replicas_learning_recent_learn_app_count.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.learn.app.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning LT_APP count in the recent period");
_counter_replicas_learning_recent_learn_log_count.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.learn.log.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning LT_LOG count in the recent period");
_counter_replicas_learning_recent_learn_reset_count.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.learn.reset.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning reset count in the recent period"
"for the reason of resp.last_committed_decree < _app->last_committed_decree()");
_counter_replicas_learning_recent_learn_fail_count.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.learn.fail.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning fail count in the recent period");
_counter_replicas_learning_recent_learn_succ_count.init_app_counter(
"eon.replica_stub",
"replicas.learning.recent.learn.succ.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"learning succeed count in the recent period");
_counter_replicas_recent_prepare_fail_count.init_app_counter(
"eon.replica_stub",
"replicas.recent.prepare.fail.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"prepare fail count in the recent period");
_counter_replicas_recent_replica_move_error_count.init_app_counter(
"eon.replica_stub",
"replicas.recent.replica.move.error.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"replica move to error count in the recent period");
_counter_replicas_recent_replica_move_garbage_count.init_app_counter(
"eon.replica_stub",
"replicas.recent.replica.move.garbage.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"replica move to garbage count in the recent period");
_counter_replicas_recent_replica_remove_dir_count.init_app_counter(
"eon.replica_stub",
"replicas.recent.replica.remove.dir.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"replica directory remove count in the recent period");
_counter_replicas_error_replica_dir_count.init_app_counter(
"eon.replica_stub",
"replicas.error.replica.dir.count",
COUNTER_TYPE_NUMBER,
"error replica directory(*.err) count");
_counter_replicas_garbage_replica_dir_count.init_app_counter(
"eon.replica_stub",
"replicas.garbage.replica.dir.count",
COUNTER_TYPE_NUMBER,
"garbage replica directory(*.gar) count");
_counter_replicas_tmp_replica_dir_count.init_app_counter(
"eon.replica_stub",
"replicas.tmp.replica.dir.count",
COUNTER_TYPE_NUMBER,
"disk migration tmp replica directory(*.tmp) count");
_counter_replicas_origin_replica_dir_count.init_app_counter(
"eon.replica_stub",
"replicas.origin.replica.dir.count",
COUNTER_TYPE_NUMBER,
"disk migration origin replica directory(.ori) count");
_counter_replicas_recent_group_check_fail_count.init_app_counter(
"eon.replica_stub",
"replicas.recent.group.check.fail.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"group check fail count in the recent period");
_counter_shared_log_size.init_app_counter(
"eon.replica_stub", "shared.log.size(MB)", COUNTER_TYPE_NUMBER, "shared log size(MB)");
_counter_shared_log_recent_write_size.init_app_counter(
"eon.replica_stub",
"shared.log.recent.write.size",
COUNTER_TYPE_VOLATILE_NUMBER,
"shared log write size in the recent period");
_counter_recent_trigger_emergency_checkpoint_count.init_app_counter(
"eon.replica_stub",
"recent.trigger.emergency.checkpoint.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"trigger emergency checkpoint count in the recent period");
// <- Duplication Metrics ->
_counter_dup_confirmed_rate.init_app_counter("eon.replica_stub",
"dup.confirmed_rate",
COUNTER_TYPE_RATE,
"increasing rate of confirmed mutations");
_counter_dup_pending_mutations_count.init_app_counter(
"eon.replica_stub",
"dup.pending_mutations_count",
COUNTER_TYPE_VOLATILE_NUMBER,
"number of mutations pending for duplication");
// <- Cold Backup Metrics ->
_counter_cold_backup_running_count.init_app_counter("eon.replica_stub",
"cold.backup.running.count",
COUNTER_TYPE_NUMBER,
"current cold backup count");
_counter_cold_backup_recent_start_count.init_app_counter(
"eon.replica_stub",
"cold.backup.recent.start.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current cold backup start count in the recent period");
_counter_cold_backup_recent_succ_count.init_app_counter(
"eon.replica_stub",
"cold.backup.recent.succ.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current cold backup succeed count in the recent period");
_counter_cold_backup_recent_fail_count.init_app_counter(
"eon.replica_stub",
"cold.backup.recent.fail.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current cold backup fail count in the recent period");
_counter_cold_backup_recent_cancel_count.init_app_counter(
"eon.replica_stub",
"cold.backup.recent.cancel.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current cold backup cancel count in the recent period");
_counter_cold_backup_recent_pause_count.init_app_counter(
"eon.replica_stub",
"cold.backup.recent.pause.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current cold backup pause count in the recent period");
_counter_cold_backup_recent_upload_file_succ_count.init_app_counter(
"eon.replica_stub",
"cold.backup.recent.upload.file.succ.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current cold backup upload file succeed count in the recent period");
_counter_cold_backup_recent_upload_file_fail_count.init_app_counter(
"eon.replica_stub",
"cold.backup.recent.upload.file.fail.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current cold backup upload file failed count in the recent period");
_counter_cold_backup_recent_upload_file_size.init_app_counter(
"eon.replica_stub",
"cold.backup.recent.upload.file.size",
COUNTER_TYPE_VOLATILE_NUMBER,
"current cold backup upload file size in the recent perriod");
_counter_cold_backup_max_duration_time_ms.init_app_counter(
"eon.replica_stub",
"cold.backup.max.duration.time.ms",
COUNTER_TYPE_NUMBER,
"current cold backup max duration time");
_counter_cold_backup_max_upload_file_size.init_app_counter(
"eon.replica_stub",
"cold.backup.max.upload.file.size",
COUNTER_TYPE_NUMBER,
"current cold backup max upload file size");
_counter_recent_read_fail_count.init_app_counter("eon.replica_stub",
"recent.read.fail.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"read fail count in the recent period");
_counter_recent_write_fail_count.init_app_counter("eon.replica_stub",
"recent.write.fail.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"write fail count in the recent period");
_counter_recent_read_busy_count.init_app_counter("eon.replica_stub",
"recent.read.busy.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"read busy count in the recent period");
_counter_recent_write_busy_count.init_app_counter("eon.replica_stub",
"recent.write.busy.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"write busy count in the recent period");
_counter_recent_write_size_exceed_threshold_count.init_app_counter(
"eon.replica_stub",
"recent_write_size_exceed_threshold_count",
COUNTER_TYPE_VOLATILE_NUMBER,
"write size exceed threshold count in the recent period");
// <- Bulk Load Metrics ->
_counter_bulk_load_running_count.init_app_counter("eon.replica_stub",
"bulk.load.running.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current bulk load running count");
_counter_bulk_load_downloading_count.init_app_counter("eon.replica_stub",
"bulk.load.downloading.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current bulk load downloading count");
_counter_bulk_load_ingestion_count.init_app_counter("eon.replica_stub",
"bulk.load.ingestion.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current bulk load ingestion count");
_counter_bulk_load_succeed_count.init_app_counter("eon.replica_stub",
"bulk.load.succeed.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current bulk load succeed count");
_counter_bulk_load_failed_count.init_app_counter("eon.replica_stub",
"bulk.load.failed.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current bulk load failed count");
_counter_bulk_load_download_file_succ_count.init_app_counter(
"eon.replica_stub",
"bulk.load.download.file.success.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"bulk load recent download file success count");
_counter_bulk_load_download_file_fail_count.init_app_counter(
"eon.replica_stub",
"bulk.load.download.file.fail.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"bulk load recent download file failed count");
_counter_bulk_load_download_file_size.init_app_counter("eon.replica_stub",
"bulk.load.download.file.size",
COUNTER_TYPE_VOLATILE_NUMBER,
"bulk load recent download file size");
_counter_bulk_load_max_ingestion_time_ms.init_app_counter(
"eon.replica_stub",
"bulk.load.max.ingestion.duration.time.ms",
COUNTER_TYPE_NUMBER,
"bulk load max ingestion duration time(ms)");
_counter_bulk_load_max_duration_time_ms.init_app_counter("eon.replica_stub",
"bulk.load.max.duration.time.ms",
COUNTER_TYPE_NUMBER,
"bulk load max duration time(ms)");
#ifdef DSN_ENABLE_GPERF
_counter_tcmalloc_release_memory_size.init_app_counter("eon.replica_stub",
"tcmalloc.release.memory.size",
COUNTER_TYPE_NUMBER,
"current tcmalloc release memory size");
#endif
// <- Partition split Metrics ->
_counter_replicas_splitting_count.init_app_counter("eon.replica_stub",
"replicas.splitting.count",
COUNTER_TYPE_NUMBER,
"current partition splitting count");
_counter_replicas_splitting_max_duration_time_ms.init_app_counter(
"eon.replica_stub",
"replicas.splitting.max.duration.time(ms)",
COUNTER_TYPE_NUMBER,
"current partition splitting max duration time(ms)");
_counter_replicas_splitting_max_async_learn_time_ms.init_app_counter(
"eon.replica_stub",
"replicas.splitting.max.async.learn.time(ms)",
COUNTER_TYPE_NUMBER,
"current partition splitting max async learn time(ms)");
_counter_replicas_splitting_max_copy_file_size.init_app_counter(
"eon.replica_stub",
"replicas.splitting.max.copy.file.size",
COUNTER_TYPE_NUMBER,
"current splitting max copy file size");
_counter_replicas_splitting_recent_start_count.init_app_counter(
"eon.replica_stub",
"replicas.splitting.recent.start.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"current splitting start count in the recent period");
_counter_replicas_splitting_recent_copy_file_count.init_app_counter(
"eon.replica_stub",
"replicas.splitting.recent.copy.file.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"splitting copy file count in the recent period");
_counter_replicas_splitting_recent_copy_file_size.init_app_counter(
"eon.replica_stub",
"replicas.splitting.recent.copy.file.size",
COUNTER_TYPE_VOLATILE_NUMBER,
"splitting copy file size in the recent period");
_counter_replicas_splitting_recent_copy_mutation_count.init_app_counter(
"eon.replica_stub",
"replicas.splitting.recent.copy.mutation.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"splitting copy mutation count in the recent period");
_counter_replicas_splitting_recent_split_succ_count.init_app_counter(
"eon.replica_stub",
"replicas.splitting.recent.split.succ.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"splitting succeed count in the recent period");
_counter_replicas_splitting_recent_split_fail_count.init_app_counter(
"eon.replica_stub",
"replicas.splitting.recent.split.fail.count",
COUNTER_TYPE_VOLATILE_NUMBER,
"splitting fail count in the recent period");
}