lnav icon indicating copy to clipboard operation
lnav copied to clipboard

[format] fixed syslog regex

Open Foalyy opened this issue 10 months ago • 4 comments

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_pid field 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.

Foalyy avatar Apr 21 '25 11:04 Foalyy

Related issue : https://github.com/rsyslog/rsyslog/issues/4891

Foalyy avatar Apr 21 '25 13:04 Foalyy

Can you also add the sample log line that was not matched into the format file.

tstack avatar Apr 21 '25 16:04 tstack

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?

Foalyy avatar Apr 22 '25 14:04 Foalyy

Would you prefer that I revert the [\d\.] in this pull request?

Yeah, leave that out for now.

tstack avatar Apr 22 '25 15:04 tstack