Skip to content

dnsdist: create a stable identifier per instance (á la server.id) #16261

@pieterlexis

Description

@pieterlexis
  • Program: dnsdist
  • Issue type: Feature request

Short description

It would be great for dnsdist to expose a stable ID in logs, prometheus metrics, tracing etc. to differentiate between instances.

Usecase

When exporting metrics (and other things, like structured logs or traces) it would be good to have an identifier that identifies the individual dnsdist instance.

The hostname is stable, but not identifying enough when multiple instances of dnsdist run on the same machine. The same can be said for /etc/machine-id.

systemd's INVOCATION_ID changes every time the service is started, so it is not stable across restarts.

For carbon export, we already has this functionality, allowing operators to set ourname.

Description

It would be great to have a configuration option SetServerID("myname") that could be propagated to e.g. a field in the structured logging, a prometheus label, the carbon name, traces, and perhaps as an answer to NSID or server.id queries (with the proper config).

We can bikeshed over the naming and implementation. This ticket exists so we don't forget.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions