Skip to content

Resolve UDP printer_address label via reverse DNS - #127

Open
cryptomilk wants to merge 1 commit into
pubeldev:mainfrom
cryptomilk:asn-dns
Open

cryptomilk wants to merge 1 commit into
pubeldev:mainfrom
cryptomilk:asn-dns

Conversation

@cryptomilk

Copy link
Copy Markdown

The UDP syslog listener sets the printer_address label from the raw syslog source IP. This mismatches PrusaLink metrics which use the configured address (hostname or IP from prusa.yml), breaking Grafana dashboard filters that join both metric types by printer_address.

Add a cache with a reverse DNS lookup on the syslog source IP and strip the domain to produce a short hostname.
Falls back to the raw IP if DNS fails. Cache prevents per-packet DNS overhead.

The UDP syslog listener sets the printer_address label from the raw
syslog source IP. This mismatches PrusaLink metrics which use the
configured address (hostname or IP from prusa.yml), breaking Grafana
dashboard filters that join both metric types by printer_address.

At startup, resolve each printer's configured address to its IP(s) and
register a canonical IP->address mapping in the UDP package.
resolveAddr() checks this map first, so UDP metrics use the exact same
address string as PrusaLink metrics
Falls back to reverse DNS short hostname, then raw IP, for any printer
not in the config.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant