syslog-ng to replace syslogd
Russell Coker
russell at coker.com.au
Sun Aug 22 13:36:57 UTC 2004
On Sun, 22 Aug 2004 22:19, Lennert Buytenhek <buytenh at wantstofly.org> wrote:
> On Sun, Aug 22, 2004 at 10:12:00PM +1000, Russell Coker wrote:
> > In most cases synchronous writes for logs just reduces performance for no
> > benefit.
>
> (I didn't check whether it does this already.) Wouldn't it be possible
> to speed up synchronous syslogging with something like this:
>
> That way, if you get a burst of log messages, the first sync write
> would write out just a single line, and all the next writes would
> write out everything that accumulated in the buffer so far in one
> single sync write.
Your pseudo-code didn't clearly explain your intent.
> That way, you still get sync behaviour, but without the
> whole-disk-roundtrip-per-log-line overhead.
Usually when there's a lot of logging the performance of the syslogd itself is
not the issue. The problem is that synchronous writes kill file system
performance and interfere with the performance of other programs in the
system. Synchronous syslogd operation can reduce performance of a server
that's bottlenecked by disk writes by 20% or more. For a serious mail server
you don't want the mail facility log entries to go to a synchronous file.
The synchronous writes to the mail queue and for mail delivery hurt enough.
If the performance of the syslogd itself is the issue then you have no option
but to turn off synchronous writes. For this situation it would be good if
there was an option to select whether the daemon should write directly but
not synchronously or whether it should wait for page-sized buffers (IE use
fwrite()).
--
http://www.coker.com.au/selinux/ My NSA Security Enhanced Linux packages
http://www.coker.com.au/bonnie++/ Bonnie++ hard drive benchmark
http://www.coker.com.au/postal/ Postal SMTP/POP benchmark
http://www.coker.com.au/~russell/ My home page
More information about the fedora-devel-list
mailing list