Hello again. I did some more testing today.
LAB setup:
PowerShell script with UDP stream
Wireshark which confirms a number of sent packets
tcpdump on Graylog which confirms a number of received packets
One running UDP input with 25m input buffer.
(2019-03-13T09:01:46.510+01:00 WARN [UdpTransport] receiveBufferSize (SO_RCVBUF) for input SyslogUDPInput{title=GrayLog Bruteforce test, type=org.graylog2.inputs.syslog.udp.SyslogUDPInput, nodeId=null} (channel [id: 0x0f033690, L:/0.0.0.0:10514]) should be 26214400 but is 52428800.)
or 50?
Testing at full speed:
1mil of messages sent in 33sec (30k/sec) (interesting thing is, that Graylog is reporting on the top right in In/Out approx. half of them on input (15k))
Processing enabled
- 536,424 documents in elastic
- 500,676 documents in elastic
- 490,999 documents in elastic
input buffer max approx 200msgs
process buffer full (65,536)
output buffer max approx 30% (65,536)
Processing disabled
- 955,488 added journal
- 839,327 added journal
- 815,119 added journal
Testing at limited speed:
1mil of messages sent in 70sec (15k/sec)
Processing enabled
- 999,942 documents in elastic
- 999,735 documents in elastic
- 999,700 documents in elastic
input buffer max approx 200msgs
process buffer full for few seconds at the end of tests (65,536)
output buffer is slowly getting full and stays full (65,536)
My conclusion:
When testing at full speed, I have lost a huge number of messages (50%) between network stack and journal and processing. When processing disabled, things are getting better, but there is still approx 10-20% loss of messages between stack and journal. What drives me crazy is that I don’t see any errors/warnings in the Graylog server log. (at default settings, I don’t know if I can debug something into the log)
When testing with the limited speed I have lost approx 0.3% messages in ethernet (network). TCP dump and Graylog confirms, that all received messages are correctly saved into Elastic.
Jan, please know that this is a lab scenario, I am actually finding the best way for our customers to centralize log location. I have to compare GL with another log analyzer right now.