FHZ Netzwerkmonitor

Aus SGiersch WIKI
Wechseln zu: Navigation, Suche

Hiermit lassen sich Netzwerkkomponenten (wie router, server, usw.) mittels homeputer studio überwachen. Im fehlerfalle können auch diverse aktionen ausgelöst kann.

Erstelle eine neue Typdefinition

  • Name: typServer
  • Zuständen:
    • Internet-Ok.jpg = ok
    • Internet-Warnung.jpg = warnung
    • Internet-Fehler.jpg = fehler

(Die Bilder können bei www.sgiersch.de geladen werden.)

Erstelle ein neues virtuelles Objekt

  • Name: vobjServer = typServer
  • Variable: errcnt = Zahl.

Erstelle ein neues virtuelles Objekt

  • Name: vobjLogNetzwerkStatus = "Zeichen"

Erstelle ein Makro Name: makNetzwerkMonitor1

  • Variablen:
    • errcnt = Zahl
    • prot = Zeichen
  • Ausführungsintervall: jede Minute


Makro
<?
   $V_makNetzwerkMonitor1_errcnt = 0;
   $V_makNetzwerkMonitor1_prot = "";
   $s = fsockopen("www.meine-website.de", 80, $errno, $errstr, 1);
   if (!$s) {
      $V_makNetzwerkMonitor1_prot = $V_makNetzwerkMonitor1_prot."/http ";
      $V_makNetzwerkMonitor1_errcnt++;
   }
   else
   {
      fclose($s);
   }
?>

wenn prot = "" dann
   vobjLogNetzwerkStatus := "Serverstatus:<<<<www.meine-website.de ist OK"
sonst
   vobjLogNetzwerkStatus := "Serverstatus:<<<<www.meine-website.de ist fehlerhaft<<Protokoll " + prot + "down"
endewenn

wenn errcnt = 0 dann
   vobjServer := "ok"
   vobjServer.errcnt := 0
sonst
   vobjServer.errcnt := vobjServer.errcnt + 1
endewenn

wenn vobjServer.errcnt >= 2 und errcnt > 0 dann
   vobjServer := "warnung"
   ** hier ggf. aktionen ausfuehren fuer den fall "warnung"
endewenn

wenn vobjServer.errcnt >= 5 und errcnt > 0 dann
   vobjServer := "fehler"
   ** hier ggf. aktionen ausfuehren fuer den fall "fehler"
endewenn


Mit einem erneuten hinzufügen in den php-Code lassen sich mehrere Server und andere Ports (Protokolle) abfragen.

   $s = fsockopen("meine-andere-website.de", 110, $errno, $errstr, 1);
   if (!$s) {
      $V_makNetzwerkMonitor1_prot = $V_makNetzwerkMonitor1_prot."/http ";
      $V_makNetzwerkMonitor1_errcnt++;
   }
   else
   {
      fclose($s);
   }

Hier läßt sich auch ein pop3 E-Mailport abfragen.


*port 80 = http
*port 25 = smtp
*port 110 = pop3 
*port 3389 = remotedesktop-protokoll

Im FHZ-Forum gefunden und für meine Zwecke modifiziert.