plc-mirror/metrics/prometheus/exporters/query-exporter/config.yaml

50 lines
1.5 KiB
YAML
Raw Normal View History

2024-02-18 21:00:39 +01:00
databases:
db1:
dsn: env:POSTGRES_URL
2024-02-18 21:00:39 +01:00
metrics:
repos_fully_indexed:
type: gauge
description: Repositories fully indexed
repos_seen:
type: gauge
description: Repositories seen
repos_failed:
type: gauge
description: Repositories that we failed to index
# posts_lang:
# type: summary
# description: Posts by language
# labels: [uk, lt, et, lv, pl, ga, fi, sv,
# en, jp, de, fr, pt, es, nl, ko, tr, zh, ru]
2024-02-18 21:00:39 +01:00
queries:
query1:
interval: 30
databases: [db1]
metrics: [repos_fully_indexed]
sql: >
select count(*) as repos_fully_indexed
from repos left join pds on repos.pds = pds.id
where failed_attempts < 3
and last_indexed_rev <> ''
and (last_indexed_rev >= first_rev_since_reset
or first_rev_since_reset is null or first_rev_since_reset = '')
and (repos.first_cursor_since_reset >= pds.first_cursor_since_reset
or repos.first_cursor_since_reset is null or repos.first_cursor_since_reset = 0);
2024-02-18 21:00:39 +01:00
query2:
interval: 30
databases: [db1]
metrics: [repos_seen]
sql: select count(*) as repos_seen from repos;
query3:
interval: 30
databases: [db1]
metrics: [repos_failed]
sql: select count(*) as repos_failed from repos where failed_attempts >= 3;
# query4:
# interval: 300
# databases: [db1]
# metrics: [posts_lang]
# sql: select count(*) as uk from records where collection in ('app.bsky.feed.post') and content::text like '%"langs": ["uk"]%';