micrometer-metrics/micrometer

StatsdMeterRegistry doesn't renew resolved ip address on DNS change

Open

#1,252 opened on Feb 27, 2019

View on GitHub
 (15 comments) (2 reactions) (0 assignees)Java (935 forks)batch import
enhancementhelp wantedregistry: statsd

Repository metrics

Stars
 (4,220 stars)
PR merge metrics
 (Avg merge 1d 21h) (100 merged PRs in 30d)

Description

Hello everyone.

I've faced with the problem that StatsdMeterRegistry doesn't aware of DNS changes after it was start()ed. As a result, metrics aren't delivered to Telegraf and there is no warning or so in logs.

How to reproduce:

  1. Create record in /etc/hosts file, e.g.: 127.0.0.1 telegraf.kube-system.svc.cluster.local.
  2. Start application with StatsdMeterRegistry enabled and use host described above.
  3. Change record in /etc/hosts file to another ip (127.0.0.2 for example)

Actual result: Using wireshark/tcpdump you can see that all metrics are being sent to 127.0.0.1 even after step 3.

Expected result: StatsdMeterRegistry respect DNS name change.

Can be reproduced on real network/DNS server. Security manager disabled. Micrometer version: 1.1.3, reproducible on 1.0.7 as well.

Contributor guide