public final class MeteredDnsResolver extends Object implements DnsResolver
DnsResolver wrapper that records DNS resolution metrics via Micrometer.
Exposes the following meters (names are prefixed by MetricConfig.prefix):
<prefix>.dns.resolve (timer) — latency of resolve(String)<prefix>.dns.resolutions (counter) — outcome-count of resolve(String)<prefix>.dns.canonical (timer) — latency of resolveCanonicalHostname(String)<prefix>.dns.canonicals (counter) — outcome-count of resolveCanonicalHostname(String)result = ok|errorhost (only when ObservingOptions.TagLevel#EXTENDED)common tags| Constructor and Description |
|---|
MeteredDnsResolver(DnsResolver delegate,
io.micrometer.core.instrument.MeterRegistry registry,
MetricConfig mc,
ObservingOptions opts) |
| Modifier and Type | Method and Description |
|---|---|
InetAddress[] |
resolve(String host) |
String |
resolveCanonicalHostname(String host) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitresolvepublic MeteredDnsResolver(DnsResolver delegate, io.micrometer.core.instrument.MeterRegistry registry, MetricConfig mc, ObservingOptions opts)
delegate - underlying resolverregistry - meter registrymc - metric configuration (prefix, common tags). If null, defaults are used.opts - observing options (for tag level). If null, ObservingOptions.DEFAULT is used.public InetAddress[] resolve(String host) throws UnknownHostException
resolve in interface DnsResolverUnknownHostExceptionpublic String resolveCanonicalHostname(String host) throws UnknownHostException
resolveCanonicalHostname in interface DnsResolverUnknownHostExceptionCopyright © 1999–2021 The Apache Software Foundation. All rights reserved.