Package org.bluezoo.gumdrop.dns
Class DNSServerMetrics
java.lang.Object
org.bluezoo.gumdrop.dns.DNSServerMetrics
OpenTelemetry metrics for DNS servers.
This class provides standardized DNS server metrics for monitoring name resolution operations.
Metrics provided:
dns.server.queries- Total queries received (by type)dns.server.responses- Responses sent (by rcode)dns.server.query.duration- Query processing durationdns.server.cache.hits- Cache hitsdns.server.cache.misses- Cache missesdns.server.upstream.queries- Queries forwarded upstreamdns.server.upstream.duration- Upstream query duration
- Author:
- Chris Burdess
-
Constructor Summary
ConstructorsConstructorDescriptionDNSServerMetrics(TelemetryConfig config) Creates DNS server metrics using the given telemetry configuration. -
Method Summary
Modifier and TypeMethodDescriptionvoidcacheHit()Records a cache hit.voidRecords a cache miss.voidqueryReceived(String queryType, String transport) Records a DNS query received.voidresponseSent(String rcode, double durationMs, String transport) Records a DNS response sent.voidRecords a failed upstream query.voidupstreamQuery(double durationMs) Records an upstream query.
-
Constructor Details
-
DNSServerMetrics
Creates DNS server metrics using the given telemetry configuration.- Parameters:
config- the telemetry configuration
-
-
Method Details
-
queryReceived
Records a DNS query received.- Parameters:
queryType- the query type name (e.g. "A", "AAAA", "MX")transport- the transport protocol (e.g. "udp", "dot", "doq")
-
responseSent
Records a DNS response sent.- Parameters:
rcode- the response code name (e.g. "NOERROR", "NXDOMAIN", "SERVFAIL")durationMs- the query processing duration in millisecondstransport- the transport protocol (e.g. "udp", "dot", "doq")
-
cacheHit
public void cacheHit()Records a cache hit. -
cacheMiss
public void cacheMiss()Records a cache miss. -
upstreamQuery
public void upstreamQuery(double durationMs) Records an upstream query.- Parameters:
durationMs- the upstream query duration in milliseconds
-
upstreamFailure
public void upstreamFailure()Records a failed upstream query.
-