At a professional scale (like Anycast setup), there's no time to watch at individual log files, even logging to syslogd is not considered state-of-the-art any longer.
Converting all free-form log messages to structured logs in PowerDNS is definitely requiring less work than asking all users to find regular expressions capturing each possible log message correctly.
Short description
I would be great if PowerDNS would log in a structured way. This means, instead of the current free-form text in an ever growing log file, events
catj
instead of lose string searches with lots of false positivesExpected behaviour
void Logger::log(const string &msg, Urgency u)
would take an additional dictionary.would translate into a just very concise event message and instead provide all details using a specific, clear classification like
via the dictionary.
Actual behaviour
Free-form log messages, which are human readable, but not really machine parsable.
Other information
There are many convincing statements about why structured logging is the preferred way out there, for example:
Usecase
At a professional scale (like Anycast setup), there's no time to watch at individual log files, even logging to syslogd is not considered state-of-the-art any longer.
Converting all free-form log messages to structured logs in PowerDNS is definitely requiring less work than asking all users to find regular expressions capturing each possible log message correctly.