feat(prometheus): the Prometheus dashboard widget, target + template (#5691)
#5691 "Generic Prometheus dashboard widget: pick a target and a template", step 3 of milestone 508 "Prometheus widget templates". - /plugins/prometheus/widget draws one target with one template in widget shape: the verdict (led by "isn't answering" when the target is down), then each block with problems first, figures beside a share bar or the last 24h of bars, and the healthy rest folding to "+N more healthy" past six. A missing target or template, or one that no longer checks, says so. - library.py: bundled templates from plugins/prometheus/widgets/*.yaml, the picker's target and template lists, and the default title. - widgets/fabled_archives.yaml: the first bundled template, against the series Archives reports (refined in #5693). - Dashboard: a widget setting may take `options_from` (read when the picker opens) with an `empty` sentence; `default_title`; a Details link may name settings ("/plugins/prometheus/targets/{target}"). Prometheus is grouped with the integrations. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
# Fabled Archives, from its /metrics on the LAN-only backup listener (:8081).
|
||||
# Written against what Archives reports; see docs/plugins/prometheus.md.
|
||||
name: Fabled Archives
|
||||
description: Backup targets, replication jobs, storage, integrity and the version running.
|
||||
version: 1
|
||||
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
|
||||
healthy: [ok, running]
|
||||
warning: [late, warning, never]
|
||||
columns:
|
||||
- {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]
|
||||
Reference in New Issue
Block a user