[syslog-ng]performance test questions

Balazs Scheidler syslog-ng@lists.balabit.hu
Fri, 7 Mar 2003 16:28:12 +0100


On Thu, Mar 06, 2003 at 04:33:46PM +0100, Roberto Nibali wrote:
> Using 1 client (5000 messages total):
> --------------
> syslogd as a client (UDP transfer)
>    no   MACRO         :  5000 messages (100%) #no loss at all
>    file MACRO         : ~4979 messages (99%)  #loss: packet receive errors
>    file+template MACRO: ~4408 messages (88%)  #loss: packet receive errors
> 
> syslog-ng as a client (UDP transfer)
>    no   MACRO         : ~3905 messages (78%) \
>    file MACRO         : ~3400 messages (68%)  > #loss: packet receive 
>    errors!!
>    file+template MACRO: ~3362 messages (67%) /
> 
> syslog-ng as a client (TCP transfer)
>    no   MACRO         :  5000 messages (100%)
>    file MACRO         :  5000 messages (100%)
>    file+template MACRO:  5000 messages (100%)
> 
> What strikes me as particularly odd is that syslog-ng as a client in UDP 
> mode still performs worse than syslogd in burst mode.

What do you use for fetching local messages? unix-stream or unix-dgram?

sysklogd uses unix-dgram while syslog-ng is usually used with unix-stream
sources.


> In case you're interested: The 5000 messages are 142Bytes in length and 
> sent in 0.9s without any sleeping between sending. This results in almost 
> exactly 1MByte/s which is close to link saturation (no IRQ or RX queue 
> starvation noticed from NIC driver code) on my 10Mbit/s test network.

Your results are really appreciated. No one has done so extensive
performance testing on syslog-ng before.


> 
> If I find time I'll run the tests with 3 clients too. But meanwhile I'm all 
> for the inclusion of the gprof'd code since rewriting doesn't look like a 
> feasible option in the current state of development (shortly before stable 
> release).

I'll go with the gperf based code for now.

-- 
Bazsi
PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1