Skip to main content
APA
Sponsored by CAST AI — Kubernetes cost optimization Better Stack — Uptime monitoring and log management
⚠️

Alert thresholds depend on the nature of your applications. Some queries may have arbitrary tolerance thresholds. Building an efficient monitoring platform takes time. 😉

Juniper Prometheus Alert Rules

3 Prometheus alerting rules for Juniper. Exported via czerwonk/junos_exporter. These rules cover critical and warning conditions — copy and paste the YAML into your Prometheus configuration.

wget https://raw.githubusercontent.com/samber/awesome-prometheus-alerts/refs/heads/master/dist/rules/juniper/czerwonk-junos-exporter.yml
critical

9.4.1. Juniper switch down

The switch appears to be down

- alert: JuniperSwitchDown
  expr: junos_up == 0
  for: 0m
  labels:
    severity: critical
  annotations:
    summary: Juniper switch down (instance {{ $labels.instance }})
    description: "The switch appears to be down\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"
critical

9.4.2. Juniper critical Bandwidth Usage 1GiB

Interface is highly saturated. (> 0.90GiB/s)

- alert: JuniperCriticalBandwidthUsage1GiB
  expr: rate(junos_interface_transmit_bytes[1m]) * 8 > 1e+9 * 0.90
  for: 1m
  labels:
    severity: critical
  annotations:
    summary: Juniper critical Bandwidth Usage 1GiB (instance {{ $labels.instance }})
    description: "Interface is highly saturated. (> 0.90GiB/s)\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"
warning

9.4.3. Juniper warning Bandwidth Usage 1GiB

Interface is getting saturated. (> 0.80GiB/s)

- alert: JuniperWarningBandwidthUsage1GiB
  expr: rate(junos_interface_transmit_bytes[1m]) * 8 > 1e+9 * 0.80
  for: 1m
  labels:
    severity: warning
  annotations:
    summary: Juniper warning Bandwidth Usage 1GiB (instance {{ $labels.instance }})
    description: "Interface is getting saturated. (> 0.80GiB/s)\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"