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. 😉

Freeswitch Prometheus Alert Rules

3 Prometheus alerting rules for Freeswitch. Exported via znerol/prometheus-freeswitch-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/freeswitch/znerol-freeswitch-exporter.yml
critical

9.6.1. Freeswitch down

Freeswitch {{ $labels.instance }} is unresponsive.

- alert: FreeswitchDown
  expr: freeswitch_up == 0
  for: 1m
  labels:
    severity: critical
  annotations:
    summary: Freeswitch down (instance {{ $labels.instance }})
    description: "Freeswitch {{ $labels.instance }} is unresponsive.\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"
warning

9.6.2. Freeswitch Sessions Warning

High sessions usage on {{ $labels.instance }}: {{ $value | printf "%.2f"}}%

- alert: FreeswitchSessionsWarning
  expr: (freeswitch_session_active * 100 / freeswitch_session_limit) > 80 and freeswitch_session_limit > 0
  for: 10m
  labels:
    severity: warning
  annotations:
    summary: Freeswitch Sessions Warning (instance {{ $labels.instance }})
    description: "High sessions usage on {{ $labels.instance }}: {{ $value | printf \"%.2f\"}}%\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"
critical

9.6.3. Freeswitch Sessions Critical

High sessions usage on {{ $labels.instance }}: {{ $value | printf "%.2f"}}%

- alert: FreeswitchSessionsCritical
  expr: (freeswitch_session_active * 100 / freeswitch_session_limit) > 90 and freeswitch_session_limit > 0
  for: 5m
  labels:
    severity: critical
  annotations:
    summary: Freeswitch Sessions Critical (instance {{ $labels.instance }})
    description: "High sessions usage on {{ $labels.instance }}: {{ $value | printf \"%.2f\"}}%\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"