Re: stopping multilog

[email protected] (Paul Jarc) Sat, 27 Sep 2008 18:45:47 -0400
Newsgroups gmane.comp.djb.syslog
Organization What did you have in mind? A short, blunt, human pyramid?
Message-ID <[email protected]>
richard lucassen <[email protected]> wrote:
> I run a process which writes data through multilog. Each 5 minutes, I
> need to process the collected data and start with a new "current"
> sending an ALARM signal to the multilog process.

Let multilog run your processor when it rotates the log file.  Look at
the description of "!processor" at the end:
http://cr.yp.to/daemontools/multilog.html

> command ./main/current
> svc -a ./
> 
> But what if data is written to ./main/current while "command" is
> running?

command might see a partial line at the end of the "current" file.
More data could also be written to "current" after command exits, but
before multilog rotates the file, so that data would never get
proocessed.

> What happens to data written to multilog if I stop the
> multilog process using the -d and -u option?:
>
> svc -d ./
> command ./main/current
> svc -u ./
> svc -a ./

This eliminates the possibility of command seeing a partial line, but
after you restart multilog, it is still possible for some more data to
be written to "current" before the rotation, so your processor won't
see it.


paul