dns-probe/rules.test.yml

100 lines
3.9 KiB
YAML

rule_files:
- rules.yml
evaluation_interval: 1m
tests:
- interval: 1m
input_series:
- series: 'dns_probe_soa_serial{nameserver="2001:db8::1",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_soa_serial{nameserver="2001:db8::2",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_soa_serial{nameserver="2001:db8::3",zone="example.com."}'
values: '2+2x5'
alert_rule_test:
- eval_time: 6m
alertname: DnsSerialDesync
exp_alerts:
- exp_labels:
severity: critical
zone: example.com.
exp_annotations:
summary: Serial out of sync
description: Nameservers for zone example.com. are serving 2 different values of the serial
- interval: 1m
input_series:
- series: 'dns_probe_soa_serial{nameserver="2001:db8::1",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_soa_serial{nameserver="2001:db8::2",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_soa_serial{nameserver="2001:db8::3",zone="example.com."}'
values: '1+1x5'
alert_rule_test:
- eval_time: 6m
alertname: DnsSerialDesync
exp_alerts: []
- interval: 1m
input_series:
- series: 'dns_probe_ns_set{nameserver="2001:db8::1",target="ns1.example.com.",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_ns_set{nameserver="2001:db8::1",target="ns2.example.com.",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_ns_set{nameserver="2001:db8::2",target="ns1.example.com.",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_ns_set{nameserver="2001:db8::2",target="ns2.example.com.",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_ns_set{nameserver="2001:db8::3",target="ns1.example.com.",zone="example.com."}'
values: '1+1x5'
alert_rule_test:
- eval_time: 6m
alertname: DnsNsMismatch
exp_alerts:
- exp_labels:
severity: critical
zone: example.com.
nameserver: 2001:db8::3
exp_annotations:
summary: NS out of sync
description: The nameserver 2001:db8::3 is not serving all NS for zone example.com. (found 1 NS).
- interval: 1m
input_series:
- series: 'dns_probe_ns_set{nameserver="2001:db8::1",target="ns1.example.com.",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_ns_set{nameserver="2001:db8::1",target="ns2.example.com.",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_ns_set{nameserver="2001:db8::2",target="ns1.example.com.",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_ns_set{nameserver="2001:db8::2",target="ns2.example.com.",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_ns_set{nameserver="2001:db8::3",target="ns1.example.com.",zone="example.com."}'
values: '1+1x5'
- series: 'dns_probe_ns_set{nameserver="2001:db8::3",target="ns2.example.com.",zone="example.com."}'
values: '1+1x5'
alert_rule_test:
- eval_time: 6m
alertname: DnsNsMismatch
exp_alerts: []
- interval: 1m
input_series:
- series: 'dns_probe_query_success{name="example.com.",nameserver="2001:db8::1",type="SOA"}'
values: '1+1x5'
- series: 'dns_probe_query_success{name="example.com.",nameserver="2001:db8::2",type="SOA"}'
values: '0+0x5'
alert_rule_test:
- eval_time: 6m
alertname: DnsQueryFailed
exp_alerts:
- exp_labels:
severity: critical
nameserver: 2001:db8::2
name: example.com.
type: SOA
exp_annotations:
summary: Failed to query nameserver
description: The probe failed to query the nameserver 2001:db8::2 for name example.com. and type SOA.