> -----Original Message-----
> From: [email protected] [mailto:rsyslog-
> [email protected]] On Behalf Of Kaiwang Chen
> Sent: Thursday, March 15, 2012 1:59 PM
> To: rsyslog-users
> Subject: Re: [rsyslog] lots of queue files left in working directory
> 
> 2012/3/13 Kaiwang Chen <[email protected]>:
> > 2012/3/13 Rainer Gerhards <[email protected]>:
> >> [snip]
> >>> Anyway, I will verify it.
> >> If your run 5.8.6, no need to verify as you are not affected. I will
> try to
> >> reproduce the issue with that version, but I will then probably need
> a debug
> >> log from you, as I tried yesterday and the problem disappeared once
> the fix
> >> went in.
> >
> > I found the disk queue index file (mq.qi in my ase) was lost,
> 
> Actually this problem persists in 5.8.6 based code. Looks like the
> index of an action queue for MySQL, dbq.qi, never came into existance,
> with the following outcome:

If I remember it correctly (loooong time since I wrote that code), the queue
info file by default is only written when necessary, which I think means on
shutdown only. This is done in order to save performance. HOWEVER, there is a
setting that permits you to specify how often (I think in number of messages
enqueued) the .qi should be written. If you set that to a sufficiently large
value, the performance impact should be minimal.

I think the queue doc has this parameter:
http://www.rsyslog.com/doc/queues.html

Search for "checkpoint" on that page.
Rainer
> 
> # ls -l /var/spool/rsyslog/
> total 3248
> -rw------- 1 root root  172437 Mar 15 19:42 dbq.00000037
> -rw------- 1 root root 3125007 Mar 12 12:51 mq.00000787
> -rw-r--r-- 1 root root     490 Mar 15 19:32 mq.qi
> 
> # lsof -p `pgrep rsyslog` -nP |grep spool
> rsyslogd 7399 root    4w   REG                8,1   3125007  186663427
> /var/spool/rsyslog/mq.00000787
> rsyslogd 7399 root    5r   REG                8,1   3125007  186663427
> /var/spool/rsyslog/mq.00000787
> rsyslogd 7399 root    6r   REG                8,1   3125007  186663427
> /var/spool/rsyslog/mq.00000787
> rsyslogd 7399 root   16w   REG                8,1    172437  168096254
> /var/spool/rsyslog/dbq.00000037
> rsyslogd 7399 root   46r   REG                8,1    172437  168096254
> /var/spool/rsyslog/dbq.00000037
> rsyslogd 7399 root   47r   REG                8,1    172437  168096254
> /var/spool/rsyslog/dbq.00000037
> 
> > as a
> > result qqueueTryLoadPersistedInfo() failed to detect the queue
> > files...
> > With full list of mq.<number>, is it possible to assemble the
> > corresponding index named mq.qi? Although the reason why it was
> > missing remains unknown, I'd better have the queue recovered.
> >
> >>
> >> Also thanks for your comments on the counters. I will review that
> part of the
> >> code.
> >>
> >> Rainer
> >> _______________________________________________
> >> rsyslog mailing list
> >> http://lists.adiscon.net/mailman/listinfo/rsyslog
> >> http://www.rsyslog.com/professional-services/
> >
> > Thanks,
> > Kaiwang
> 
> Thanks,
> Kaiwang
> _______________________________________________
> rsyslog mailing list
> http://lists.adiscon.net/mailman/listinfo/rsyslog
> http://www.rsyslog.com/professional-services/
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/

Reply via email to