-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Filebeat] Add support for syslog rfc 5424 #15467
Conversation
Would it be possible to have the input detect 5424 vs 3164 versus manually specifying a format in the input? Having user's determine the specific syslog format and send it to a different port/filebeat complicates deployment of syslog support and it would seem the formats are different enough to allow a quick detection of the correct format? |
I did some research, rsyslog per example have different parsers and you have to specify. Syslog-ng, have a detection "algorithm". It tries to detect using the timestamp field on modules/syslogformat/syslog-format.c using functions from lib/timeutils/scan-timestamp.c.
Another way to detect, rfc5424 has VERSION just after PRI field. Like On logstash-plugins/logstash-input-syslog#15 (comment) there's a code proposal:
|
For the use-cases we have in SIEM I think it's critical that a new syslog input can detect automatically the format in use. Some users have hundreds of devices sending their syslog to Filebeat and it would be impractical to have two different listening ports depending on each device configuration. Furthermore, we've seen a few different date formats in use. I'm no syslog expert but it looks to me that a same RFC can have different date formats in the wild, some with YYYY, some with subsecond precission, different tz formats, etc. This an updated syslog will at least tolerate, if not parse 100% correctly:
|
Hi! We're labeling this issue as |
Pinging @elastic/integrations-services (Team:Services) |
Hi! We're labeling this issue as |
Hi! |
Resolves #6872.
Draft, needs testing.