linux
(boospy)
February 23, 2024, 12:52pm
1
Hallo Leute,
wir nutzen hier CheckMK in der RAW Edit Version 2.2.0p12. Ich habe das Cronmonitoring laut Dokumentation erfolgreich aktiviert:
Nun möchte ich aber zusätzlich zur Information das der Cron gelaufen ist den Output überwachen. Hier z.b. wirft das Script welches Let’s Encryptzertifikate global über zentralen DNS für viele Server erstellt einen Output mit Error oder eben keinen Error. Nun möchte ich diesen Output mit überwachen.
z.B. auf der CMD würde ich das tun:
grep -i error /meineoutput_from_cron
Kann ich so etwas in CheckMK verwirklichen?
Danke
lg
openmindz
(Thomas Karatzoglou)
February 23, 2024, 1:04pm
2
Hi @linux
Spontane Idee: Du koenntest dein Logfile mit mk_logwatch auf Fehler ueberwachen.
Gruesse,
Thomas
1 Like
mschlenker
(Mattias Schlenker)
February 23, 2024, 1:10pm
3
Das lässt sich über einen kleinen Wrapper leicht realisieren:
#!/bin/bash
/usr/bin/some_job > /meineoutput_from_cron
retcode=$?
echo '<<<local>>>' > /var/lib/check_mk_agent/spool/spooldummy.txt
if grep -i error /meineoutput_from_cron ; then
echo '2 "Log Dingens" - Ups, karpott' >> /var/lib/check_mk_agent/spool/spooldummy.txt
else
echo '0 "Log Dingens" - Alles gut' >> /var/lib/check_mk_agent/spool/spooldummy.txt
fi
exit $?
Und dann halt den Wrapper vom Cronjob aufrufen lassen.
3 Likes
linux
(boospy)
February 23, 2024, 1:21pm
5
Hab das damit gleich mal getestet. Im Endeffekt liest dies die Dinge schon aus. Nur glaub ich hab ich da noch ein kleines Verständnisthema:
nano /etc/check_mk/logwatch.cfg
"/var/log/letsencrypt.log" maxlinesize=1024 encoding=utf-8
C Error
C error
C "+ Challenge validation has failed :("
CheckMK soll ein Critical anzeigen wenn dies oder ein Teil von dem oder auch das Wort “error” im Log steht: “+ Challenge validation has failed :(”
Aber CheckMK zeigt immer noch “alles ok” an. Was mach ich falsch?
openmindz
(Thomas Karatzoglou)
February 23, 2024, 1:21pm
6
Da entlarvt sich ein South Park Fan…
1 Like
r.sander
(Robert Sander)
February 23, 2024, 1:35pm
7
Die Muster sind Regular Expressions. Das Plus an der Stelle ist nicht valide.
Lass + und einfach weg, es ist eh ein Infix-Match.
1 Like
openmindz
(Thomas Karatzoglou)
February 23, 2024, 1:36pm
8
Also die config Datei muss /etc/check_mk/logwatch.cfg heissen.
Es koennte sein, dass die Sonderzeichen in der Konfiguration stoeren.
Ich schlage Dir vor, dass Ganze erst mal auf der Kommandozeile zu
testen.
Wenn Du eine logwatch.cfg Datei hast, die Du mit mk_logwatch testen
willst, dann kannst Du die einfach zusammen mit dem plugin in ein Verzeichnis
kopieren, und diese dem plugin mit mk_logwatch -d “verfuettern”, dann solltest
Du sehen was das Problem ist.
linux
(boospy)
February 23, 2024, 1:52pm
9
openmindz:
Wenn Du eine logwatch.cfg Datei hast, die Du mit mk_logwatch testen
willst, dann kannst Du die einfach zusammen mit dem plugin in ein Verzeichnis
kopieren, und diese dem plugin mit mk_logwatch -d “verfuettern”, dann solltest
Du sehen was das Problem ist.
Da kommt leider nichts verwertbares raus:
check_mk ./mk_logwatch -d
<<<logwatch>>>
[[[/var/log/letsencrypt.log]]]
BATCH: 1708696026-175071068103132240089117017161119180006024083036
[[[/var/log/messages]]]
BATCH: 1708696026-175071068103132240089117017161119180006024083036
r.sander:
Die Muster sind Regular Expressions. Das Plus an der Stelle ist nicht valide.
Lass + und einfach weg, es ist eh ein Infix-Match.
Hab ich gemacht sieht nun so aus:
"/var/log/letsencrypt.log"
I Handling authorization
C error
C Challenge validation has failed
Ich hab dann auch mal in das Logfile das Wort “error” manuell geschrieben. Ändert auch nichts.
r.sander
(Robert Sander)
February 23, 2024, 2:27pm
10
mk_logwatch liest nur neue Meldungen aus der Logdatei und merkt sich dann bis zum nächsten Aufruf, wo es in der Datei war.
Wenn also diese Logdatei immer wieder von vorne beschrieben wird, kann mk_logwatch damit nicht umgehen.
2 Likes
openmindz
(Thomas Karatzoglou)
February 23, 2024, 2:35pm
11
Kannst Du uns mal ein Exzerpt des logs schicken den Du ueberpruefen willst?