On Fri, Jul 3, 2015 at 12:49 PM, Marcin Niesluchowski* Message credibility: Lets imagine simple service which collects logs via unix sockets. There is no reliable way of identifying logging process. getsockopt() with SO_PEERCRED option would give pid form cred structure, but according to manual it may not be of actual logging process:
<m.niesluchow@xxxxxxxxxxx> wrote:
Dear All,So, now we start moving syslogd into kernel land because userspace is
This series of patches extends kmsg interface with ability to dynamicaly
create (and destroy) kmsg-like devices which can be used by user space
for logging. Logging to kernel has number of benefits, including but not
limited to - always available, requiring no userspace, automatically
rotating and low overhead.
User-space logging to kernel cyclic buffers was already successfully used
in android logger concept but it had certain flaws that this commits try
to address:
* drops hardcoded number of devices and static paths in favor for dynamic
configuration by ioctl interface in userspace
* extends existing driver instead of creating completely new one
too broken to provide
decent logging?
I can understand the systemd is using kmsg if no other logging service
is available
but I really don't think we should encourage other programs to do so.
Why can't you just make sure that your target has a working
syslogd/rsyslogd/journald/whatever?
All can be done perfectly fine in userspace.