For more details and examples, see UDP Health Checks
stream {
match dig_health_check_txt {
expect ~ \x7f\x00\x00\x01;
send \xe7\x56\x01\x00\x00\x01\x00\x00\x00\x00\x00\x00\x09\x6c\x6f\x63\x61\x6c\x68\x6f\x73\x74\x00\x00\x01\x00\x01;
}
server {
health_check interval=3s fails=1 passes=2;
server_name dns.example.com;
listen 17.242.2.7:88;
listen 17.242.2.7:88 udp;
proxy_pass my_serivce;
}
upstream amy_serivce {
server dns1.my_domain.com:53;
server dns2.my_domain.com:53;
least_conn;
zone dns_my_domain.com 1024k;
}
}