[syslog-ng] performance
Balazs Scheidler
bazsi@balabit.hu
Mon, 8 May 2000 19:51:27 +0200
> > > > How syslog-ng deals with high-volume logging? The old syslogd is very bad
> > > > in this respect; if you feed it with lots of logs, the system slows down
> > > > horribly.
> > > > So, how does syslog-ng behaves in such cases?
> > >
> > > I find that syslog-ng drops approximately 95% of all log entries when the
> > > system generates them quickly. This is using the tcp protocol and writing
> > > to a file on the remote machine.
> > >
> > > This has kept me from trying to implement syslog-ng in production.
> >
> > You can finetune garbage collection parameters using the gc_idle_threshold
> > and gc_busy_threshold options.
> >
> > idle threshold should be set to a low value, busy_threshold should be set to
> > a high value (about the number of messages in a burst)
> >
> > options { gc_idle_threshold(100); gc_busy_threshold(5000); };
>
> I tried your suggestion before. I does help with transient message
> bursts, but at steady state syslog-ng eventually gets overwhelmed. My
> application does not generate short, separated bursts of messages. It
> creates long, sustained streams of messages. This is where I see
> syslog-ng dropping (most) log entries. You can try for yourself by
> dumping short messages to an input named pipe in a tight loop.
Then you may need to increase the output fifo size using the log_fifo_size()
option.
--
Bazsi
PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1
url: http://www.balabit.hu/pgpkey.txt