use super::*;
pub const ALL_METRICS: &[&str] = &[
READ_ROWS,
READ_BYTES,
READ_PARTITIONS,
READ_DURATION,
READ_PARTITION_LOOKUP,
READ_BLOOM_CHECKS,
READ_SCAN_WINDOW_REFILL,
READ_SSTABLES_PRUNED,
READ_BLOOM_FALSE_NEGATIVES,
READ_BTI_ROWS_ROOT_REJECTED,
READ_PARTITION_ACCESS_DISTINCT_PARTITIONS,
READ_PARTITION_ACCESS_ACCESSES,
READ_PARTITION_ACCESS_BYTES,
READ_PARTITION_ACCESS_SAMPLE_DENOMINATOR,
READ_PARTITION_ACCESS_DROPPED,
READ_PARTITION_ACCESS_SAMPLING_FLOOR,
READ_PARTITION_ACCESS_WINDOW_DROPPED,
READ_PHASE_IO,
READ_PHASE_DECOMPRESS,
READ_PHASE_DECODE,
READ_PHASE_MERGE,
READER_FDS_OPEN,
MERGE_ROWS_IN,
MERGE_ROWS_OUT,
QUERY_DEGRADED_PATH,
INDEX_PARSES_TOTAL,
INDEX_INTERVAL_PARSES_TOTAL,
KEY_CACHE_HITS,
KEY_CACHE_MISSES,
KEY_CACHE_EVICTIONS,
KEY_CACHE_INVALIDATIONS,
KEY_CACHE_RESIDENT_BYTES,
KEY_CACHE_CAPACITY_BYTES,
STORAGE_OPEN_SSTABLES,
STORAGE_OPEN_BYTES,
STORAGE_OPEN_TABLES,
QUERY_DURATION,
QUERY_ROWS,
QUERY_ROWS_SCANNED,
SSTABLES_OPEN,
COMPACTION_DURATION,
ERRORS_TOTAL,
WRITE_MUTATIONS,
MEMTABLE_SIZE_BYTES,
MEMTABLE_ROWS,
WAL_SYNC_DURATION,
WAL_SIZE,
WAL_RECOVERY_DURATION,
FLUSH_DURATION,
FLUSH_ROWS,
FLUSH_BYTES,
FLUSH_SSTABLES,
WRITE_PARTITIONS,
WRITE_BYTES,
COMPRESSION_RATIO,
COMPACTION_ROWS_MERGED,
COMPACTION_BYTES_WRITTEN,
COMPACTION_SSTABLES_IN,
COMPACTION_SSTABLES_OUT,
COMPACTION_TOMBSTONES_PURGED,
COMPACTION_TOMBSTONES_SUPPRESSED,
COMPACTION_TOMBSTONES_EMITTED,
COMPACTION_LAG,
COMPACTION_FINALIZE_DURATION,
COMPACTION_BUDGET_REQUESTED,
COMPACTION_BUDGET_CONSUMED,
MERGE_PRODUCER_THREADS,
MERGE_ACTIVE_MERGES,
RPC_REQUESTS,
RPC_DURATION,
RPC_IN_FLIGHT,
RPC_ROWS,
RPC_BYTES,
RPC_PHASE_DURATION,
RPC_PHASE_ACTIVE,
WARM_CACHE_HITS,
WARM_CACHE_MISSES,
WARM_CACHE_EVICTS,
WARM_CACHE_REFRESH,
FLIGHT_ADMISSION_LIMIT,
FLIGHT_ADMISSION_IN_USE,
FLIGHT_ADMISSION_WAITING,
FLIGHT_ADMISSION_REJECTED_TOTAL,
FLIGHT_ADMISSION_WAIT_SECONDS,
MERGE_EGRESS_CHANNEL_DEPTH,
PROC_THREADS,
PROC_FDS,
PROC_RSS_BYTES,
FLIGHT_BLOCKING_TASKS_IN_USE,
FLIGHT_TABLES_DISCOVERED,
FLIGHT_WARM_TABLES,
];
pub const SATURATION_GAUGES: &[&str] = &[
MERGE_EGRESS_CHANNEL_DEPTH,
MERGE_ACTIVE_MERGES,
PROC_THREADS,
PROC_FDS,
PROC_RSS_BYTES,
FLIGHT_BLOCKING_TASKS_IN_USE,
FLIGHT_TABLES_DISCOVERED,
FLIGHT_WARM_TABLES,
];
pub const ADMISSION_METRICS: &[&str] = &[
FLIGHT_ADMISSION_LIMIT,
FLIGHT_ADMISSION_IN_USE,
FLIGHT_ADMISSION_WAITING,
FLIGHT_ADMISSION_REJECTED_TOTAL,
FLIGHT_ADMISSION_WAIT_SECONDS,
];
pub struct StatsOnlyMetric {
pub name: &'static str,
pub stats_field: &'static str,
pub stats_probe: fn(&crate::memory::MemoryStats) -> u64,
}
pub const STATS_ONLY_METRICS: &[StatsOnlyMetric] = &[
StatsOnlyMetric {
name: KEY_CACHE_HITS,
stats_field: "memory_stats.key_cache_hits",
stats_probe: |s| s.key_cache_hits,
},
StatsOnlyMetric {
name: KEY_CACHE_MISSES,
stats_field: "memory_stats.key_cache_misses",
stats_probe: |s| s.key_cache_misses,
},
StatsOnlyMetric {
name: KEY_CACHE_EVICTIONS,
stats_field: "memory_stats.key_cache_evictions",
stats_probe: |s| s.key_cache_evictions,
},
StatsOnlyMetric {
name: KEY_CACHE_INVALIDATIONS,
stats_field: "memory_stats.key_cache_invalidations",
stats_probe: |s| s.key_cache_invalidations,
},
StatsOnlyMetric {
name: KEY_CACHE_RESIDENT_BYTES,
stats_field: "memory_stats.key_cache_resident_bytes",
stats_probe: |s| s.key_cache_resident_bytes as u64,
},
StatsOnlyMetric {
name: KEY_CACHE_CAPACITY_BYTES,
stats_field: "memory_stats.key_cache_capacity_bytes",
stats_probe: |s| s.key_cache_capacity_bytes as u64,
},
];