Nagios :: Schnittstelle.

Laufzeitinteraktion mit Nagios
Jetzt downloaden

Nagios :: Schnittstelle. Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Sam Vilain
  • Website des Verlags:
  • http://search.cpan.org/~samv/

Nagios :: Schnittstelle. Stichworte


Nagios :: Schnittstelle. Beschreibung

Laufzeitinteraktion mit Nagios Nagios :: Schnittstelle ist ein Perl-Modul für die grundlegende Laufzeitinteraktion mit Nagios 3-Instanzen. Es gibt keine Funktionen, um Konfigurationsdateien zu analysieren oder zu schreiben (noch?), Aber es kann die meisten Logfile-Nachrichten sowie Schreibsteuerungsnachrichten analysieren und die Statusdatei für Einnahmen von Aktionen analysieren, die nichts nützliches Protokoll loggt.Synopsis verwenden Nagios :: Schnittstelle; # Richten Sie einen Logfile-Reader ein, der Datei :: HEAD MY $ logfile = Nagios :: Interface :: logFile-> NEU (Tail => Datei :: ack-> neu (Name => "/ var / log / nagios3 / nagios) .log ", MaxIninterval => 5, Intervall => 2, Tail => 10,); # Eine Nachricht lesen, analysieren Sie es und senden Sie es meine $ log_message = $ logfile-> get_message; # oder wenn Sie Loglines von irgendwo anders erhalten, geben Sie an parse_logline $ log_message = $ logFile-> parse_logline ($ _); # Zurückgegebene Nachrichten haben Rollen für die Gemeinsamkeit und Klassen für den Typ. Drucken $ log_message-> host. " ist " . ($ log_message-> up? "up": "down"); Wenn $ log_message-> tut ("nagios :: interface :: alert :: host"); # Controlling über die Nagios-Steuerdatei My $ Control = Nagios :: Interface :: Control-> NEU (Dateiname => "/var/lib/nagios3/rw/nagios.cmd",); # Machen Sie jede Art von Protokollnachricht als Befehl ... # Siehe Nagios :: Interface :: Concretetypes für eine Liste Meine $ svc_downtime = Nagios :: Interface :: ScheduleServicedOndTime-> NEU (begin => zeit, ende => Time + 15 * 60, Fixed => 1, Autor => ($ env {logName} || $ env {user} || (getpwuid ($ "Hier ist ein Kommentar",); My $ Entry_Time = $ Control-> Problem ($ svc_downtime); # Lesen des Statussprotokolls Meine $ Status = Nagios :: Interface :: Status-> NEU (Dateiname => "/var/cache/nagios3/status.dat",); Schlaf 1 While (Status Status-> Dateiname) <$ extract_time); $ status-> parse_file; My @blocks = Grep {$ _-> {Entry_Time} == $ Entry_Time $ _-> {comment} EQ "Hier ist ein Kommentar", } $ status-> get_blocks ("servicedowntime"); Verwenden Sie Set :: Objekt QW (Set); My $ Downtime_IDs = Set (MAP {$ _-> {Downtime_ID} @blocks)); drucken "Ausfallzeit-IDs: $ DownTime_IDs \ n "; # jetzt stornieren die Ausfallzeiten, um das Beispiel $ Control-> Ausgabe abzuschließen · Perl.


Nagios :: Schnittstelle. Zugehörige Software