[syslog-ng] Solaris syslog-ng tuning
Vincent Haverlant
vincent at haverlant.org
Tue Mar 7 22:45:01 CET 2006
Le Tue Mar 7 09:34:23 2006, Cary, Kim a écrit:
| Vincent!
|
| Thanks much for confirming the issue and repeating the link to me.
|
| Well, the only _intended_ udp traffic to the system is syslog.
| Currently, the system is logging from a PIX on one GigE interface,
| and from a few servers plus a less active PIX on another GigE.
|
| We send the PIX logs, separately, to pipes. And log everything to file.
|
| # vmstat 5 4
| kthr memory page disk faults cpu
| r b w swap free re mf pi po fr de sr s0 s1 s3 -- in sy cs us sy id
| 0 0 4 2793888 737144 34 5 232 2 1 0 0 0 3 0 0 124 18 107 11 9 80
| 0 0 36 2680456 673440 5 6 0 0 0 0 0 3 5 0 0 1897 15728 2516 9 15 76
| 0 0 36 2680456 673440 5 5 0 0 0 0 0 0 2 0 0 1612 13349 2268 10 10 80
| 0 0 36 2680456 673440 5 5 0 0 0 0 0 0 3 0 0 1854 15740 2520 13 15 73
|
| # iostat 5 4
| tty sd0 sd1 sd30 nfs1 cpu
| tin tout kps tps serv kps tps serv kps tps serv kps tps serv us sy wt id
| 0 37 5 0 11 421 3 22 0 0 0 0 0 0 11 9 0 80
| 0 47 0 0 0 259 2 29 0 0 0 0 0 0 11 14 0 75
| 0 16 28 4 17 334 5 25 0 0 0 0 0 0 15 16 1 69
| 0 16 2 0 10 293 2 40 0 0 0 0 0 0 11 11 0 78
|
| At: ndd /dev/udp udp_max_buf 33554432 (32Mb!)
|
| We have these time/counter readings for udpInOverflows:
| 00 - 645628929
| 33 - 645630391
| 96 - 645632008
|
| Or, about 1924 packets/minute lost.
|
| At udp_max_buf 64Mb (!!!), 2713 packets/minute lost.
|
| I am FAR from out of memory 700Mb free.
|
| 1) Am I reading that loss right??
Probably, you might however want to snoop on the interface to see what
kind of udp packets come on your interface.
| 2) Any tips from Solaris/syslog-ng tuners would be appreciated!
udp_max_buf does not set the queue length of the udp socket, which by
the way can have a different value for each socket...
You could have a look at:
http://sunsolve.sun.com/search/document.do?assetkey=1-30-3218-1
basically: increasing udp_max_buf without increasing udp_recv_hiwat has
no meaning. Furthermore, you can increase you socket buffer that way up
to 64k (Solaris 8 & 9), if you want to increase it
further up you must use the setsockopt call (up to udp_max_buf which
has a maximum value of 1GB).
Here is the official SUN documentation regarding this:
http://docs.sun.com/app/docs/doc/817-0404/6mg74vsb5?a=view#gbtag
Now regarding your packet loss issue. I would increase
udp_recv_hiwat -> 65536
udp_max_buf -> 1073741824 (you will never get here anyway)
Then I would try to play with syslog-ng config: log_fifo_size,
log_iw_size and log_fetch_limit. But here I'd appreciate
a syslog-ng expert to step in and tell us what to do more preceisely.
Vincent
--
.~. Vincent Haverlant -- Galadril -- #ICQ: 35695155
/V\ MSN: vincent_msn at haverlant.org -- http://www.haverlant.org/
/( )\ Parinux member: http://www.parinux.org/
^^-^^ GPG: 8FEA 52C2 5C54 A201 2375 0FA5 AF2E 1881 92D0 EE84
More information about the syslog-ng
mailing list