Comment 25 for bug 98955

Revision history for this message
Sergei Ivanov (svivanov) wrote :

I think that using the old bootlogd is the right fix. It seems that bootlogd and logd can and should coexist on the same system (of course, if they write to different logfiles). They just serve different purposes.

Bootlogd is to save everything sent to /dev/console. It does not know who writes what. It can start and exit any time, and scripts do not notice any change (no SIGPIPESs, no failed IO, no nothing). This is the right tool for the problem "what did that scrolled-away messages say?".

Logd is heavier. It uses redirected output of these scripts. This allows to log them separately, but at a price: it is not transparent (a process can detect that its stdout is a socket), and it is must run forever (or at least be extremely careful with those redirected file descriptors, as they could be even passed on to daemons). It can be useful for problems like "which of these scripts issued this message?" And normally the answer should be clear even from the mixed output, so I would consider logd as a tool for special cases.

So my suggestion is to add bootlogd to the system and use logd (once it is working properly) as an additional tool when needed. Sorry if my analysis is incorrect, I'm not an expert. Maybe some developer can comment on this further.