[prev in list] [next in list] [prev in thread] [next in thread]
List: opensuse
Subject: Re: [opensuse] systemd hides important information for diagnosis of rsyslog.
From: Andrey Borzenkov <arvidjaar () gmail ! com>
Date: 2013-06-15 6:28:48
Message-ID: 20130615102848.7b0f70b7 () opensuse ! site
[Download RAW message or body]
В Sat, 15 Jun 2013 09:35:37 +0400
Andrey Borzenkov <arvidjaar@gmail.com> пишет:
> В Thu, 13 Jun 2013 18:46:51 -0400
> Cristian Rodríguez <crrodriguez@opensuse.org> пишет:
>
> > El 13/06/13 17:56, Carlos E. R. escribió:
> >
> > > Why is not systemd logging this output?
> >
> > Because:
> >
> > 1. that output is sent to stderr.
> >
> > 2. The unit file has StandardOutput=null as expected, otherwise a
> > feedback loop will ocurr (the messages emitted by rsyslog service
> > messages will be logged to the journal, which in turn will be forwarded
> > to the syslog socket, that will cause a request for a syslog
> > implementation to be activated..goto beggining :-) )
> >
>
> So you think it is better to completely remove any possibility to
> find out why rsyslogd failed to start instead of rate-limiting number of
> failed attempts?
>
> Does not systemd already disables socket activation if service
> failed to start several times in a sequence? Which would give user all
> information needed to fix the problem and re-enable it?
>
Actually I tested behavior with and without disabling rsyslogd
stdout/stderr.
Both with and without StandardOutput=inherit in rsyslog if I have error
that prevents rsuslogd from starting I get exactly the same behavior -
systemd permanently attempts to restart syslog.service spending 50% CPU
in system and 50% CPU in user mode. Which is more or less obvious as
normal system has quite a lot of logging going on, so rsyslog does not
add anything significant here.
OTOH removing StandardOutput=inherit from rsyslog.conf allows me to
see, *WHY* it did not start:
journalctl -b /sbin/rsyslogd
-- Logs begin at Sat, 2013-06-15 10:12:46 MSK, end at Sat, 2013-06-15 10:17:02 MSK. \
--
Jun 15 10:14:35 linux-o0ic.site rsyslogd[1526]: rsyslogd: error during parsing file \
/etc/rsyslog.d/dummy.conf, on or before line 1: syntax error on token '=' [try \
http://www.rsyslog.com/e/2207 ]
Jun 15 10:14:35 linux-o0ic.site rsyslogd[1526]: rsyslogd: CONFIG ERROR: could not \
interpret master config file '/etc/rsyslog.conf'. [try http://www.rsyslog.com/e/2207 \
]
Jun 15 10:14:35 linux-o0ic.site rsyslogd[1526]: rsyslogd: run failed with error -2207 \
(see rsyslog.h or try http://www.rsyslog.com/e/2207 to learn what \
that number means)
...
(unfortunately those lines are not usually visible in "systemctl
status", not sure why).
So I fail to see any justification for suppressing rsyslog messages.
Carlos, I think it warrants bug report so it can be followed.
Additionally, it also demonstrates that systemd does not do any rate
limiting on socket-activated services. Which is bad actually.
--
To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org
To contact the owner, e-mail: opensuse+owner@opensuse.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic