Local Check Intervall

Hallo,

ich möchte einen lokalen Check auf einem Windows Server nur alle 5 Minuten ausführen lassen.
Daher habe ich eine Regel Set cache age for plugins and local checks erstellt. Ich sehe nun auch, das der Check nur ca. alle 5 Minuten ausgeführt wird.

Jedoch sind die Services nun Stale, muss hier noch etwas eingestellt werden?

Das Problem dürfte sein, dass der Check mehrere Sections ausgibt und das nicht korrekt verarbeitet wird:
WARNING: Exception in discovery function of check type 'local': Invalid line in agent section <<<local>>>: u'<<<test:sep(58)>>>'

Agent output mit cmk -d:

<<<local>>>
cached(1585824980,300) 0 cache_test - OK: Last exec: 02.04.2020 12:56:20
cached(1585825185,300) <<<test:sep(58)>>>
cached(1585825185,300) [[[asd/1]]]
cached(1585825185,300) Status:5

Vermutlich sollten die Sections (<<<test:sep(58)>>>) nicht mit dem cached(…) geprefixed werden?

Hallo,

hast du den check in einen Unterordner mit deiner cachetime gelegt?
...\local\300\<check>

Hallo,

das funktioniert doch nur bei Linux oder?

Zitat von Local checks :

Dieser Cache wird dann der Agentenausgabe angehängt. Unter Linux oder einem anderen unixoiden Betriebssystem kann übrigens auch jedes gecachte Plugin asynchron ausgeführt werden. Legen Sie dazu ein Unterverzeichnis an, dessen Name die Anzahl der Sekunden ist, wie lange die Ausgabe des Local-Checks gecached werden soll. In dem Beispiel wird der local-Check z. B. nur alle 10 Minuten (600 Sekunden) ausgeführt:

root@linux# /usr/lib/check_mk_agent/local/600/mylocalcheck
1 myservice count=4 WARN - Some output of a long time running script
Unter Windows wird ein local-Check genauso behandelt wie ein anderes Plugin auch: Sie geben das cache_age für den local-Check in der check_mk.ini an:

check_mk.ini
[local]
cache_age mylocalcheck = 3600
Alternativ können Sie das Caching unter Windows auch in der Agent Bakery konfigurieren.

Könnte btw. auch mal für Windows implementiert werden :wink:

Okay, ich betreue keine Windows Hosts und ist auch absolut nicht mein Betriebssystem. Wenn ich es richtig lese, müsstest du das dann entsprechend in der ini-File mit angeben.

EDIT: ja, hast du, durch die Rule. Ignoriere den Post :stuck_out_tongue_winking_eye:

Die Rule Normal check interval for service checks könnte eventuell noch den Erfolg bringen. Eingeschränkt auf deinen Service.

Ich glaube das Problem ist eher, dass der Check mehrere Sections ausgibt und diese fälschlicherweise vom Agent mit dem cached(..) versehen werden:

<<<local>>>
cached(1585824980,300) 0 cache_test - OK: Last exec: 02.04.2020 12:56:20
cached(1585825185,300) <<<test:sep(58)>>>
cached(1585825185,300) [[[asd/1]]]
cached(1585825185,300) Status:5

Sollte wahrscheinlich so sein:

<<<local>>>
cached(1585824980,300) 0 cache_test - OK: Last exec: 02.04.2020 12:56:20
<<<test:sep(58)>>>
cached(1585825185,300) [[[asd/1]]]
cached(1585825185,300) Status:5

Was auch den Fehler WARNING: Exception in discovery function of check type 'local': Invalid line in agent section <<<local>>>: u'<<<test:sep(58)>>>' beim Discovery erklären dürfte.
Denn die asynchrone Ausführung funktioniert ja mit der Regel Set cache age for plugins and local checks … es kummt aber nichts am Server an.

Jap, du scheinst auf der richtigen Fährte zu sein.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.