Files
FabledSteward/plugins/prometheus/widgets/fabled_archives.yaml
T
bvandeusenandClaude Opus 5.5 4195b9171a
CI / lint (push) Successful in 2s
CI / integration (push) Successful in 1m16s
CI / unit (push) Successful in 1m30s
CI / publish (push) Successful in 22s
docs(prometheus): writing a widget template, every block, and the format reference (#5694)
docs/plugins/prometheus-widgets.md covers:
- where templates live and how to copy one in, duplicate, export and share;
- a first template, walked through;
- each block (states with its deadlines, values, times, table, info) with an
  example;
- the format reference: keys, units, spans, limits, what the checker refuses;
- the Fabled Archives template, block by block, with what it leaves out and
  why.

Linked from the README, the plugin guide, the editor and template_format.
tests/plugins/prometheus/test_widget_guide.py checks every YAML example in the
guide against the checker, so the guide can't drift from the format.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 09:51:56 -04:00

69 lines
2.6 KiB
YAML

# Fabled Archives, from its /metrics on the LAN-only backup listener (:8081).
# Written against the series Steward stores for Archives (#5693); the format
# is docs/plugins/prometheus-widgets.md.
#
# Left out on purpose:
# - fabledarchives_section_up: a section Archives can't read stops reporting
# its series, and the rows here that read them then say "not reported".
# - the background queue (fabledarchives_jobs, *_job_attempts_*), HTTP
# requests and the audit counters: they belong on charts and alert rules,
# not on a glance.
name: Fabled Archives
description: Backup targets, replication jobs, storage, integrity and the version running.
version: 2
expects: fabledarchives_
blocks:
- states:
title: Backup targets
metric: fabledarchives_backup_target_state
name: target
healthy: [fresh]
quiet: [disabled, waiting]
warning: [late]
columns:
- {label: Last backup, metric: fabledarchives_backup_target_last_backup_timestamp_seconds}
- {label: Stored, metric: fabledarchives_backup_target_stored_bytes}
- states:
title: Replication
metric: fabledarchives_replication_job_state
name: job
# Archives ranks "running" above lateness: a run that never ends still
# reads "running". Its own deadlines say when it is overdue.
healthy: [ok, running]
warning: [late, warning, never]
warn_past: fabledarchives_replication_job_late_at_timestamp_seconds
crit_past: fabledarchives_replication_job_missing_at_timestamp_seconds
columns:
- {label: Last good copy, metric: fabledarchives_replication_job_last_success_timestamp_seconds}
- {label: Next run, metric: fabledarchives_replication_job_next_run_timestamp_seconds}
- values:
title: Storage and integrity
items:
- label: Disk free
metric: fabledarchives_data_disk_free_bytes
of: fabledarchives_data_disk_size_bytes
warn_below: 10%
crit_below: 5%
sparkline: true
- label: Files checked
metric: fabledarchives_files_checked
of: fabledarchives_files
unit: count
- label: Malware held
metric: fabledarchives_malware_held_files
unit: count
warn_above: 0
- label: Notification channels failing
metric: fabledarchives_notification_channels_failing
unit: count
warn_above: 0
- table:
title: Stored per person
metric: fabledarchives_person_stored_bytes
rows: person
columns: kind
- info:
title: Running
metric: fabledarchives_build_info
labels: [version, channel, commit]