X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/47f9e50f95540dd380b3593fd3ae25668658eea9..e847b156af79e857466b8ca0f51d68ef69a6dd01:/cookbooks/prometheus/templates/default/alert_rules.yml.erb diff --git a/cookbooks/prometheus/templates/default/alert_rules.yml.erb b/cookbooks/prometheus/templates/default/alert_rules.yml.erb index 2aa46d1f0..e90c0f74e 100644 --- a/cookbooks/prometheus/templates/default/alert_rules.yml.erb +++ b/cookbooks/prometheus/templates/default/alert_rules.yml.erb @@ -8,6 +8,36 @@ groups: for: 5m labels: alertgroup: "prometheus" + - name: amsterdam + rules: + - alert: pdu current draw + expr: rPDU2PhaseStatusCurrent{site="amsterdam",rPDU2PhaseStatusIndex="1"} / 10 > 10 + for: 5m + labels: + alertgroup: "amsterdam" + annotations: + current: "{{ $value | humanize }}A" + - alert: site current draw + expr: sum(rPDU2PhaseStatusCurrent{site="amsterdam",rPDU2PhaseStatusIndex="1"} / 10) > 13 + for: 5m + labels: + alertgroup: "amsterdam" + annotations: + current: "{{ $value | humanize }}A" + - alert: site temperature + expr: min(rPDU2SensorTempHumidityStatusTempC{site="amsterdam"}) / 10 < 18 or min(rPDU2SensorTempHumidityStatusTempC{site="amsterdam"}) / 10 > 25 + for: 5m + labels: + alertgroup: "amsterdam" + annotations: + temperature: "{{ $value | humanize }}C" + - alert: site humidity + expr: max(rPDU2SensorTempHumidityStatusRelativeHumidity{site="amsterdam"}) / 100 < 0.25 or max(rPDU2SensorTempHumidityStatusRelativeHumidity{site="amsterdam"}) / 100 > 0.65 + for: 5m + labels: + alertgroup: "amsterdam" + annotations: + humidity: "{{ $value | humanizePercentage }}" - name: apache rules: - alert: apache down @@ -22,10 +52,19 @@ groups: alertgroup: "{{ $labels.instance }}" annotations: busy_workers: "{{ $value | humanizePercentage }}" + - name: chef + rules: + - alert: chef client not running + expr: time() - node_systemd_timer_last_trigger_seconds{name="chef-client.timer"} > 3600 + for: 12h + labels: + alertgroup: "{{ $labels.instance }}" + annotations: + down_time: "{{ $value | humanizeDuration }}" - name: cpu rules: - alert: cpu pressure - expr: rate(node_pressure_cpu_waiting_seconds_total[5m]) > 0.3 + expr: rate(node_pressure_cpu_waiting_seconds_total[5m]) > 0.6 for: 15m labels: alertgroup: "{{ $labels.instance }}" @@ -380,7 +419,7 @@ groups: rules: - alert: renderd replication delay expr: renderd_replication_delay > 120 - for: 5m + for: 15m labels: alertgroup: tile annotations: @@ -417,7 +456,7 @@ groups: error_rate: "{{ $value | humanizePercentage }}" - alert: job processing rate expr: rate(pg_stat_user_tables_n_tup_del{datname="openstreetmap",relname="delayed_jobs"}[5m]) / rate(pg_stat_user_tables_n_tup_ins{datname="openstreetmap",relname="delayed_jobs"}[5m]) < 0.9 and ignoring(job, name, datname, relname, schemaname, server) chef_role{name="db-master"} == 1 - for: 5m + for: 15m labels: alertgroup: web annotations: