From a61c99736685a2629b6018c203d02309dfdf2792 Mon Sep 17 00:00:00 2001 From: Jeltz Date: Fri, 3 Nov 2023 20:50:34 +0100 Subject: [PATCH] prometheus: monitor link usage for switches --- group_vars/prom/prometheus/switch.yml | 44 +++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/group_vars/prom/prometheus/switch.yml b/group_vars/prom/prometheus/switch.yml index 1c4af87..6bc510e 100644 --- a/group_vars/prom/prometheus/switch.yml +++ b/group_vars/prom/prometheus/switch.yml @@ -44,4 +44,48 @@ prometheus__rules_switch: ErrorRate: !unsafe '{{ printf "%.2f" $value }} %' Interface: !unsafe "{{ $labels.ifName }} {{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}" + - alert: SwitchInLinkUsage + expr: + 100 * rate(ifHCInOctets[5m]) / (ifHighSpeed * 1000000 / 8) > 50 + for: 5m + keep_firing_for: 10m + labels: + severity: warning + annotations: + Usage: !unsafe '{{ printf "%.2f" $value }} %' + Interface: !unsafe "{{ $labels.ifName }} + {{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}" + - alert: SwitchInLinkUsage + expr: + 100 * rate(ifHCInOctets[5m]) / (ifHighSpeed * 1000000 / 8) > 80 + for: 5m + keep_firing_for: 10m + labels: + severity: critical + annotations: + Usage: !unsafe '{{ printf "%.2f" $value }} %' + Interface: !unsafe "{{ $labels.ifName }} + {{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}" + - alert: SwitchOutLinkUsage + expr: + 100 * rate(ifHCOutOctets[5m]) / (ifHighSpeed * 1000000 / 8) > 50 + for: 5m + keep_firing_for: 10m + labels: + severity: warning + annotations: + Usage: !unsafe '{{ printf "%.2f" $value }} %' + Interface: !unsafe "{{ $labels.ifName }} + {{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}" + - alert: SwitchOutLinkUsage + expr: + 100 * rate(ifHCOutOctets[5m]) / (ifHighSpeed * 1000000 / 8) > 80 + for: 5m + keep_firing_for: 10m + labels: + severity: warning + annotations: + Usage: !unsafe '{{ printf "%.2f" $value }} %' + Interface: !unsafe "{{ $labels.ifName }} + {{ if $labels.ifAlias }}- {{ $labels.ifAlias }}{{ end }}" ...