The DNS query receiver is used to collect latency and error metrics about a DNS server. This receiver doesn't ingest observability data from an external source, but rather repeatedly performs DNS queries itself to produce the desired data.
receivers:
dnsquery:
# A list of DNS servers to monitor
servers:
- "8.8.8.8"
- "1.1.1.1"
# A list of DNS queries that should be performed
queries:
- domain: "example.com" # Domain or subdomain to query
record_type: "A" # Record Type
# Query timeout
timeout: "2s"
# Collection interval
collection_interval: 30s
Telemetry data types supported
metrics
Is this a vendor-specific component?
[ ] This is a vendor-specific component
[ ] If this is a vendor-specific component, I am a member of the OpenTelemetry organization.
[ ] If this is a vendor-specific component, I am proposing to contribute and support it as a representative of the vendor.
Code Owner(s)
No response
Sponsor (optional)
No response
Additional context
I don't have a code owner or a sponsor. I'm opening this issue to see whether there is interest in general to have such a receiver and if so, to find a sponsor.
There are few similar use cases that come to mind for such a component:
Monitoring the status of a DNS server
Monitoring whether a certain server can still reach a DNS server (commonly done as a connectivity check)
Using DNS latencies, error rates as an indicator of networking infrastructure wellbeing
The latter two points are also covered by httpcheckreceiver, though the complexity of modern http is much higher compared with traditional DNS.
The purpose and use-cases of the new component
The DNS query receiver is used to collect latency and error metrics about a DNS server. This receiver doesn't ingest observability data from an external source, but rather repeatedly performs DNS queries itself to produce the desired data.
This proposal is inspired by the existing Telegraf DNS Query Input Plugin
Example configuration for the component
Telemetry data types supported
metrics
Is this a vendor-specific component?
Code Owner(s)
No response
Sponsor (optional)
No response
Additional context
I don't have a code owner or a sponsor. I'm opening this issue to see whether there is interest in general to have such a receiver and if so, to find a sponsor.
There are few similar use cases that come to mind for such a component:
The latter two points are also covered by
httpcheckreceiver
, though the complexity of modern http is much higher compared with traditional DNS.