rust_rocksdb/
perf_enum.rs

1// **** DO NOT modify this file! ****
2// This file is generated by cmd:
3//   gen_perf_metrics.bash rocksdb/monitoring/perf_context.cc
4
5/// Rust representation of the performance metrics from RocksDB's perf_context
6#[derive(Debug, Copy, Clone, PartialEq, Eq)]
7#[repr(u32)]
8pub enum PerfMetric {
9    UserKeyComparisonCount = 0,
10    BlockCacheHitCount = 1,
11    BlockReadCount = 2,
12    BlockReadByte = 3,
13    BlockReadTime = 4,
14    BlockChecksumTime = 5,
15    BlockDecompressTime = 6,
16    GetReadBytes = 7,
17    MultigetReadBytes = 8,
18    IterReadBytes = 9,
19    InternalKeySkippedCount = 10,
20    InternalDeleteSkippedCount = 11,
21    InternalRecentSkippedCount = 12,
22    InternalMergeCount = 13,
23    GetSnapshotTime = 14,
24    GetFromMemtableTime = 15,
25    GetFromMemtableCount = 16,
26    GetPostProcessTime = 17,
27    GetFromOutputFilesTime = 18,
28    SeekOnMemtableTime = 19,
29    SeekOnMemtableCount = 20,
30    NextOnMemtableCount = 21,
31    PrevOnMemtableCount = 22,
32    SeekChildSeekTime = 23,
33    SeekChildSeekCount = 24,
34    SeekMinHeapTime = 25,
35    SeekMaxHeapTime = 26,
36    SeekInternalSeekTime = 27,
37    FindNextUserEntryTime = 28,
38    WriteWalTime = 29,
39    WriteMemtableTime = 30,
40    WriteDelayTime = 31,
41    WritePreAndPostProcessTime = 32,
42    DbMutexLockNanos = 33,
43    DbConditionWaitNanos = 34,
44    MergeOperatorTimeNanos = 35,
45    ReadIndexBlockNanos = 36,
46    ReadFilterBlockNanos = 37,
47    NewTableBlockIterNanos = 38,
48    NewTableIteratorNanos = 39,
49    BlockSeekNanos = 40,
50    FindTableNanos = 41,
51    BloomMemtableHitCount = 42,
52    BloomMemtableMissCount = 43,
53    BloomSstHitCount = 44,
54    BloomSstMissCount = 45,
55    KeyLockWaitTime = 46,
56    KeyLockWaitCount = 47,
57    EnvNewSequentialFileNanos = 48,
58    EnvNewRandomAccessFileNanos = 49,
59    EnvNewWritableFileNanos = 50,
60    EnvReuseWritableFileNanos = 51,
61    EnvNewRandomRwFileNanos = 52,
62    EnvNewDirectoryNanos = 53,
63    EnvFileExistsNanos = 54,
64    EnvGetChildrenNanos = 55,
65    EnvGetChildrenFileAttributesNanos = 56,
66    EnvDeleteFileNanos = 57,
67    EnvCreateDirNanos = 58,
68    EnvCreateDirIfMissingNanos = 59,
69    EnvDeleteDirNanos = 60,
70    EnvGetFileSizeNanos = 61,
71    EnvGetFileModificationTimeNanos = 62,
72    EnvRenameFileNanos = 63,
73    EnvLinkFileNanos = 64,
74    EnvLockFileNanos = 65,
75    EnvUnlockFileNanos = 66,
76    EnvNewLoggerNanos = 67,
77    NumberAsyncSeek = 68,
78    BlobCacheHitCount = 69,
79    BlobReadCount = 70,
80    BlobReadByte = 71,
81    BlobReadTime = 72,
82    BlobChecksumTime = 73,
83    BlobDecompressTime = 74,
84    InternalRangeDelReseekCount = 75,
85    BlockReadCpuTime = 76,
86    InternalMergePointLookupCount = 77,
87    TotalMetricCount = 80,
88}
89
90impl PerfMetric {
91    /// Returns the name of this metric as it appears in RocksDB C++
92    pub const fn name(&self) -> &'static str {
93        match self {
94            PerfMetric::BlobCacheHitCount => "blob_cache_hit_count",
95            PerfMetric::BlobChecksumTime => "blob_checksum_time",
96            PerfMetric::BlobDecompressTime => "blob_decompress_time",
97            PerfMetric::BlobReadByte => "blob_read_byte",
98            PerfMetric::BlobReadCount => "blob_read_count",
99            PerfMetric::BlobReadTime => "blob_read_time",
100            PerfMetric::BlockCacheHitCount => "block_cache_hit_count",
101            PerfMetric::BlockChecksumTime => "block_checksum_time",
102            PerfMetric::BlockDecompressTime => "block_decompress_time",
103            PerfMetric::BlockReadByte => "block_read_byte",
104            PerfMetric::BlockReadCount => "block_read_count",
105            PerfMetric::BlockReadCpuTime => "block_read_cpu_time",
106            PerfMetric::BlockReadTime => "block_read_time",
107            PerfMetric::BlockSeekNanos => "block_seek_nanos",
108            PerfMetric::BloomMemtableHitCount => "bloom_memtable_hit_count",
109            PerfMetric::BloomMemtableMissCount => "bloom_memtable_miss_count",
110            PerfMetric::BloomSstHitCount => "bloom_sst_hit_count",
111            PerfMetric::BloomSstMissCount => "bloom_sst_miss_count",
112            PerfMetric::DbConditionWaitNanos => "db_condition_wait_nanos",
113            PerfMetric::DbMutexLockNanos => "db_mutex_lock_nanos",
114            PerfMetric::EnvCreateDirIfMissingNanos => "env_create_dir_if_missing_nanos",
115            PerfMetric::EnvCreateDirNanos => "env_create_dir_nanos",
116            PerfMetric::EnvDeleteDirNanos => "env_delete_dir_nanos",
117            PerfMetric::EnvDeleteFileNanos => "env_delete_file_nanos",
118            PerfMetric::EnvFileExistsNanos => "env_file_exists_nanos",
119            PerfMetric::EnvGetChildrenFileAttributesNanos => "env_get_children_file_attributes_nanos",
120            PerfMetric::EnvGetChildrenNanos => "env_get_children_nanos",
121            PerfMetric::EnvGetFileModificationTimeNanos => "env_get_file_modification_time_nanos",
122            PerfMetric::EnvGetFileSizeNanos => "env_get_file_size_nanos",
123            PerfMetric::EnvLinkFileNanos => "env_link_file_nanos",
124            PerfMetric::EnvLockFileNanos => "env_lock_file_nanos",
125            PerfMetric::EnvNewDirectoryNanos => "env_new_directory_nanos",
126            PerfMetric::EnvNewLoggerNanos => "env_new_logger_nanos",
127            PerfMetric::EnvNewRandomAccessFileNanos => "env_new_random_access_file_nanos",
128            PerfMetric::EnvNewRandomRwFileNanos => "env_new_random_rw_file_nanos",
129            PerfMetric::EnvNewSequentialFileNanos => "env_new_sequential_file_nanos",
130            PerfMetric::EnvNewWritableFileNanos => "env_new_writable_file_nanos",
131            PerfMetric::EnvRenameFileNanos => "env_rename_file_nanos",
132            PerfMetric::EnvReuseWritableFileNanos => "env_reuse_writable_file_nanos",
133            PerfMetric::EnvUnlockFileNanos => "env_unlock_file_nanos",
134            PerfMetric::FindNextUserEntryTime => "find_next_user_entry_time",
135            PerfMetric::FindTableNanos => "find_table_nanos",
136            PerfMetric::GetFromMemtableCount => "get_from_memtable_count",
137            PerfMetric::GetFromMemtableTime => "get_from_memtable_time",
138            PerfMetric::GetFromOutputFilesTime => "get_from_output_files_time",
139            PerfMetric::GetPostProcessTime => "get_post_process_time",
140            PerfMetric::GetReadBytes => "get_read_bytes",
141            PerfMetric::GetSnapshotTime => "get_snapshot_time",
142            PerfMetric::InternalDeleteSkippedCount => "internal_delete_skipped_count",
143            PerfMetric::InternalKeySkippedCount => "internal_key_skipped_count",
144            PerfMetric::InternalMergeCount => "internal_merge_count",
145            PerfMetric::InternalMergePointLookupCount => "internal_merge_point_lookup_count",
146            PerfMetric::InternalRangeDelReseekCount => "internal_range_del_reseek_count",
147            PerfMetric::InternalRecentSkippedCount => "internal_recent_skipped_count",
148            PerfMetric::IterReadBytes => "iter_read_bytes",
149            PerfMetric::KeyLockWaitCount => "key_lock_wait_count",
150            PerfMetric::KeyLockWaitTime => "key_lock_wait_time",
151            PerfMetric::MergeOperatorTimeNanos => "merge_operator_time_nanos",
152            PerfMetric::MultigetReadBytes => "multiget_read_bytes",
153            PerfMetric::NewTableBlockIterNanos => "new_table_block_iter_nanos",
154            PerfMetric::NewTableIteratorNanos => "new_table_iterator_nanos",
155            PerfMetric::NextOnMemtableCount => "next_on_memtable_count",
156            PerfMetric::NumberAsyncSeek => "number_async_seek",
157            PerfMetric::PrevOnMemtableCount => "prev_on_memtable_count",
158            PerfMetric::ReadFilterBlockNanos => "read_filter_block_nanos",
159            PerfMetric::ReadIndexBlockNanos => "read_index_block_nanos",
160            PerfMetric::SeekChildSeekCount => "seek_child_seek_count",
161            PerfMetric::SeekChildSeekTime => "seek_child_seek_time",
162            PerfMetric::SeekInternalSeekTime => "seek_internal_seek_time",
163            PerfMetric::SeekMaxHeapTime => "seek_max_heap_time",
164            PerfMetric::SeekMinHeapTime => "seek_min_heap_time",
165            PerfMetric::SeekOnMemtableCount => "seek_on_memtable_count",
166            PerfMetric::SeekOnMemtableTime => "seek_on_memtable_time",
167            PerfMetric::TotalMetricCount => "total_metric_count",
168            PerfMetric::UserKeyComparisonCount => "user_key_comparison_count",
169            PerfMetric::WriteDelayTime => "write_delay_time",
170            PerfMetric::WriteMemtableTime => "write_memtable_time",
171            PerfMetric::WritePreAndPostProcessTime => "write_pre_and_post_process_time",
172            PerfMetric::WriteWalTime => "write_wal_time",
173        }
174    }
175}