[format] fixed syslog regex
Some lines in my rsyslog log files on Debian (the ones coming from the imtcp module) were not matched properly because of slight differences in the format of some fields :
- the
log_pidfield sometimes contains a point - the
:after the PID is sometimes missing
Here is an example :
2025-04-21T12:24:51.761734+02:00 myhostname kernel [499130.569180] [UFW BLOCK] IN=enX0...
I'm not sure if these differences are due to a misconfiguration on my part. I'm using the latest version of rsyslog with this configuration :
$ActionFileDefaultTemplate RSYSLOG_FileFormat.
This pull requests offers to fix this on the regex's side in case other users have the same issue.
Related issue : https://github.com/rsyslog/rsyslog/issues/4891
Can you also add the sample log line that was not matched into the format file.
Here is the line that I will add to the sample section of the json file, with a missing colon :
2025-04-15T17:36:24.135033+02:00 myhostname sshd[730594] Disconnected from authenticating user root 218.92.0.111 port 37632 [preauth]
Regarding the dot in the log_pid field, actually, I was mistaken by the missing colon. In my original example (kernel [499130.569180] [UFW BLOCK]) the colon is supposed to be after kernel and the numbers in brackets are part of the body, not log_pid. After looking further, I cannot find an example with a dot in the log_pid field. Would you prefer that I revert the [\\d\\.] in this pull request?
Would you prefer that I revert the [\d\.] in this pull request?
Yeah, leave that out for now.