Feature #4969
closedUse logging attributes (timestamp, severity)
100%
Description
Currently, when we producing the log, we hard-code formatting of the log statement, including timestamp, severity level, and the actual message. Boost.Log provides facilities to separate different types of information into distinct "attributes" and then access these attributes during actual printing of the message using the so-called formatters.
One implication of this change would be the change in the appearance of the "timestamp" part in the log messages. Specifically, the current line
1562868667.788530 DEBUG: [ndn.UnixTransport] connect path=/private/tmp/nfd.sock
would look like
20190711T14:11:07.788530 DEBUG: [ndn.UnixTransport] connect path=/private/tmp/nfd.sock
We can adjust the specific formatting of the string, it just not going to be seconds since the epoch, but the actual datetime value. Out-of-box, we can easily to UTC date. To print local timezone stuff would require some extra work.
This issue is necessary to support native Android logging and should help to implement with issue #1604. In both cases, the timestamp will be added by the corresponding subsystems and attributes will be used to extract the severity level of the message.