Monitoring

Integracja z Zabbix

Przegląd

Gotowy szablon Zabbix, który co 5 minut odpytuje API zdrowia SecondDNS przez HTTP Agent, wyciąga liczniki stref przez JSONPath i uruchamia triggery, gdy strefy stają się nieaktualne lub nieosiągalne.

Wymagania

  • Zabbix Server 6.0+ (wsparcie HTTP Agent)
  • Klucz API SecondDNS (Panel → Klucz API)
  • Host w Zabbixie, do którego podłączysz szablon (może to być sam Zabbix Server)

1. Pobierz szablon

curl -O https://raw.githubusercontent.com/seconddns/dns_integrations/main/zabbix_templates/seconddns_health.yaml

Źródło: github.com/seconddns/dns_integrations/zabbix_templates

2. Zaimportuj do Zabbixa

  1. Wejdź w Configuration → Templates → Import
  2. Wybierz pobrany seconddns_health.yaml
  3. Kliknij Import

3. Skonfiguruj makra

Podłącz szablon do hosta, następnie ustaw makra:

{$SECONDDNS_API_URL}https://seconddns.com (domyślnie, zmień jeśli self-hosted)
{$SECONDDNS_API_KEY}Twój klucz API (przechowywany jako Secret text w Zabbixie)

4. Co otrzymasz

Itemy

ItemTypInterwał
Zone health JSONHTTP Agent5m
Wszystkie strefyDependent (JSONPath)
ZsynchronizowaneDependent (JSONPath)
NieaktualneDependent (JSONPath)
Master nieosiągalnyDependent (JSONPath)
Wyjście NagiosHTTP Agent5m

Triggery

TriggerPriorytet
Strefy nieaktualneWarning
Master strefy nieosiągalnyHigh
API zdrowia nie odpowiada (30 min)High

Jak to działa

  1. Master item (seconddns.health.json) pobiera GET /api/health/zones co 5 minut
  2. Zależne itemy wyciągają $.summary.total, $.summary.synced itd. przez JSONPath — bez dodatkowych wywołań HTTP
  3. Triggery oceniają liczniki: jeśli stale > 0 → Warning, jeśli masterUnreachable > 0 → High
  4. Item Nagios output (seconddns.health.nagios) pobiera ?format=nagios do czytelnego widoku w "Latest data"