File tree Expand file tree Collapse file tree
files/prometheus/alerts.d Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ ---
2+ groups :
3+ - name : pbs.rules
4+ rules :
5+ - alert : PBS backup failed
6+ expr : pbs_task_status{task_type="backup",status=~"(?i:failed|error)"} == 1
7+ for : 10m
8+ labels :
9+ severity : critical
10+ annotations :
11+ summary : " PBS backup failed on {{ $labels.node_name }}"
12+ description : " Backup {{ $labels.task }} for datastore {{ $labels.datastore }} failed."
13+
14+ - alert : PBS verification failed
15+ expr : pbs_task_status{task_type="verify",status=~"(?i:failed|error)"} == 1
16+ for : 10m
17+ labels :
18+ severity : critical
19+ annotations :
20+ summary : " PBS verification failed on {{ $labels.node_name }}"
21+ description : " Verification {{ $labels.task }} for datastore {{ $labels.datastore }} failed."
22+
23+ - alert : PBS sync failed
24+ expr : pbs_task_status{task_type="sync",status=~"(?i:failed|error)"} == 1
25+ for : 10m
26+ labels :
27+ severity : critical
28+ annotations :
29+ summary : " PBS sync failed on {{ $labels.node_name }}"
30+ description : " Sync {{ $labels.task }} for datastore {{ $labels.datastore }} failed."
Original file line number Diff line number Diff line change @@ -262,6 +262,27 @@ scrape_configs:
262262 - targets:
263263 - " prometheus-adguard_exporter:9618"
264264
265+ - job_name: ' pbs_exporter'
266+ metrics_path: /probe
267+ http_sd_configs:
268+ - <<: *netbox_auth
269+ url: https: //netbox.unitix.be /api /plugins /prometheus-sd /virtual-machines /?status =active &tag =pbs
270+ relabel_configs:
271+ - source_labels: [__meta_netbox_primary_ip]
272+ target_label: __param_target
273+ - source_labels: [__param_target]
274+ target_label: instance
275+ - source_labels: [__meta_netbox_name]
276+ target_label: node_name
277+ - source_labels: [__meta_netbox_site]
278+ target_label: site
279+ - source_labels: [__meta_netbox_tenant]
280+ target_label: tenant
281+ - source_labels: [__meta_netbox_role_slug]
282+ target_label: device_role
283+ - target_label: __address__
284+ replacement: " prometheus-pbs_exporter:9569"
285+
265286 - job_name: " hass"
266287 metrics_path: /api /prometheus
267288 authorization:
Original file line number Diff line number Diff line change @@ -3,6 +3,10 @@ dawarich_photon_api_host: photon.frai.se
33dawarich_photon_api_port : " 443"
44dawarich_photon_api_use_https : " true"
55
6+ prometheus :
7+ features :
8+ pbs_exporter : true
9+
610cloudflared :
711 docker_network : services
812 service_token : !vault |
Original file line number Diff line number Diff line change 2727 tags : adguard, adguard_exporter
2828 when : prometheus.features.adguard | default (false)
2929
30+ - name : Setup PBS exporter
31+ ansible.builtin.import_tasks : pbs_exporter.yml
32+ tags : pbs, pbs_exporter, pbs-exporter
33+ when : prometheus.features.pbs_exporter | default(false)
34+
3035- name : Setup alertmanager
3136 ansible.builtin.import_tasks : alertmanager.yml
3237 tags : alertmanager, alerts, alert
Original file line number Diff line number Diff line change 1+ ---
2+ - name : Validate PBS exporter credentials
3+ ansible.builtin.assert :
4+ that :
5+ - pbs_exporter_api_token_id is defined
6+ - pbs_exporter_api_token_id | length > 0
7+ - pbs_exporter_api_token_secret is defined
8+ - pbs_exporter_api_token_secret | length > 0
9+ fail_msg : >-
10+ pbs_exporter_api_token_id and pbs_exporter_api_token_secret must be
11+ supplied as inventory variables.
12+ no_log : true
13+
14+ - name : Setup Prometheus PBS exporter
15+ community.docker.docker_container :
16+ name : prometheus-pbs_exporter
17+ image : " {{ pbs_exporter_image | default('natrontech/pbs-exporter:latest') }}"
18+ networks :
19+ - name : monitoring
20+ dns_servers : " {{ dns.servers }}"
21+ env :
22+ PBS_TOKEN_ID : " {{ pbs_exporter_api_token_id }}"
23+ PBS_TOKEN_SECRET : " {{ pbs_exporter_api_token_secret }}"
24+ PBS_TLS_INSECURE : " true"
25+ restart : true
26+ restart_policy : always
27+ state : started
28+ pull : true
29+ labels :
30+ traefik.enable : " false"
31+ no_log : true
You can’t perform that action at this time.
0 commit comments