Add metrics for tracking cache hit ratios

This commit is contained in:
2025-06-13 01:16:24 -04:00
parent 8fe81e3ab3
commit 7c395a80fe
3 changed files with 106 additions and 2 deletions

View File

@@ -19,10 +19,12 @@ metrics:
type: value
query:
0: SHOW server_version_num
max_frozen_age:
type: row
query:
0: SELECT max(age(datfrozenxid)) AS xid_age, max(mxid_age(datminmxid)) AS mxid_age FROM pg_database
0: SELECT max(age(datfrozenxid)) AS xid_age, 0 AS mxid_age FROM pg_database
90600: SELECT max(age(datfrozenxid)) AS xid_age, max(mxid_age(datminmxid)) AS mxid_age FROM pg_database
# Per-database metrics
db_stats:
@@ -33,6 +35,11 @@ metrics:
test_args:
dbname: postgres
hit_ratios:
type: row
query:
0: SELECT sum(heap_blks_read)::float / sum(heap_blks_read + heap_blks_hit) AS avg_heap_hit_ratio, sum(idx_blks_hit)::float / sum(idx_blks_read + idx_blks_hit) AS avg_idx_hit_ratio, sum(toast_blks_hit)::float / sum(toast_blks_read + toast_blks_hit) AS avg_toast_hit_ratio, sum(tidx_blks_hit)::float / sum(tidx_blks_read + tidx_blks_hit) AS avg_tidx_hit_ratio FROM pg_statio_all_tables
# Debugging
ntables:
type: value