Skip to content

Latest commit

 

History

History
57 lines (38 loc) · 2.61 KB

dotnet-dns-metrics.md

File metadata and controls

57 lines (38 loc) · 2.61 KB

Semantic conventions for DNS metrics emitted by .NET

Status: Stable

This article defines semantic conventions for DNS metrics emitted by .NET.

DNS metrics

Metric: dns.lookup.duration

This metric SHOULD be specified with ExplicitBucketBoundaries of [ 0.005, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10 ].

Name Instrument Type Unit (UCUM) Description
dns.lookup.duration Histogram s Measures the time taken to perform a DNS lookup. [1]

[1]: Meter name: System.Net.NameResolution; Added in: .NET 8.0

Attribute Type Description Examples Requirement Level
dns.question.name string The name being queried. [1] www.example.com; dot.net Required
error.type string One of the resolution errors or the full name of exception type. [2] host_not_found; no_recovery; System.Net.Sockets.SocketException Conditionally Required: if and only if an error has occurred.

[1]: The name being queried. If the name field contains non-printable characters (below 32 or above 126), those characters should be represented as escaped base 10 integers (\DDD). Back slashes and quotes should be escaped. Tabs, carriage returns, and line feeds should be converted to \t, \r, and \n respectively.

[2]: The following errors codes are reported:

  • "host_not_found"
  • "try_again"
  • "address_family_not_supported"
  • "no_recovery"

See SocketError for more details.

error.type has the following list of well-known values. If one of them applies, then the respective value MUST be used, otherwise a custom value MAY be used.

Value Description
_OTHER A fallback error value to be used when the instrumentation doesn't define a custom value.