Logcheck: Regex funktioniert nicht

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
aktivix
Beiträge: 59
Registriert: 22.03.2008 05:15:27

Logcheck: Regex funktioniert nicht

Beitrag von aktivix » 21.12.2011 00:45:08

Hallo,

logcheck meldet mir sowas:
Dec 20 23:31:38 traven postfix/smtpd[4954]: 477C680C: client=unknown[XX.XXX.XX.XXX],
sasl_method=PLAIN, sasl_username=XXX, sasl_sender=logcheck@XXXXXXX.XXX
Will ich filtern, also habe ich in /etc/logcheck/ignore.d.server/postfix u.a. das:

Code: Alles auswählen

^\w{3} [ :[:digit:]]{11} [._[:alnum:]-]+ postfix/smtpd\[[[:digit:]]+\]: client=unknown[XX.XXX.XX.XXX],sasl_method=PLAIN, sasl_username=XXX, sasl_sender=logcheck@XXXXXXX.XXX$
Funktioniert so aber nicht. Jemand ein Tipp?

Danke schon jetzt!

syssi
Beiträge: 2951
Registriert: 24.12.2010 16:50:59
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Rheinland

Re: Logcheck: Regex funktioniert nicht

Beitrag von syssi » 21.12.2011 10:06:15

Sind die XXXX in deinem Fall ein einzelner statischer Fall oder willst du, dass alle Meldungen dieser Art ignoriert werden? Ich teste meine neuen Regeln immer mit folgendem Schnippsel

Code: Alles auswählen

sed -e 's/[[:space:]]*$//' /var/log/syslog | egrep -f dateimitneuerregel
und schaue, ob sie matcht.

syssi
Beiträge: 2951
Registriert: 24.12.2010 16:50:59
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Rheinland

Re: Logcheck: Regex funktioniert nicht

Beitrag von syssi » 21.12.2011 10:18:54

Es sind drei Fehler in der Regel. Du hast den Block vergessen, in welcher die Message-ID steht (477C680C), dann escapst du nicht die eckigen Klammern, in welcher die IP-Adresse steht. Punkte sollten ebenfalls escaped werden. Das funktionierende Resultat sieht dann so aus. Ggf. passt das ein oder andere Leerzeichen noch nicht:

Code: Alles auswählen

^\w{3} [ :[:digit:]]{11} [._[:alnum:]-]+ postfix/smtpd\[[[:digit:]]+\]: [[:alnum:]]+: client=unknown\[XX\.XXX\.XX\.XXX\],sasl_method=PLAIN, sasl_username=XXX, sasl_sender=logcheck@XXXXXXX\.XXX$

Antworten