Re: Systemd service and structured logging

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, May 6, 2019 at 10:09 AM Thomas Güttler <guettliml@xxxxxxxxxxxxxxxxxx> wrote:
Am 03.05.19 um 13:29 schrieb Jérémy ROSEN:
> if you want the whole power of structured logs, you need to use the journald API

On the other hand, JSON parsing might be a useful addition to journald, as apparently "@cee: {<jsondict>}" is a quite common syslog format.
 
> I am not sure in what language your program is written, but if you are using C, it's pretty trivial to do
> (and i'm pretty sure most bindings are trivial to use too)


Yes, this would work.


Solution 1:
  My service (written Python) uses the journald API.
  Disadvantage: My script can't be run under a different environment (without journald)


I would suggest implementing support for multiple logging backends – don't call journald APIs directly and don't print out JSON directly, but have abstract functions such as log_info(text, **kvpairs) or something such. That's what many programs already do for file/syslog/journal backends. (Possibly just use the `logging` module in python?)

--
Mantas Mikulėnas
_______________________________________________
systemd-devel mailing list
systemd-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/systemd-devel

[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux