guido bayer: Rückmeldung (Mail?!), wenn Apache hängenbleibt...

Hi,

ich habe einen der "VServer" mit ssh-root-zugang gemietet.
Er ist zwar extrem günstig (no ads :), bleibt aber bisweilen hängen.

Gibt es eine Möglichkeit (shell-script o.ä.), dass ich eine Mail bekomme oder sonst irgend eine Rückmeldung, wenn sich der Apache mal wieder verabschiedet hat?

(Bisher habe ich den Server nur zum Testen benutzt, da war das relativ egal, aber jetzt sind zwei Homepages drauf und es wäre echt peinlich, wenn diese nicht zuverlässig erreichbar wären.)

MfG,

Guido Bayer

  1. Hi,

    ich habe einen der "VServer" mit ssh-root-zugang gemietet.
    Er ist zwar extrem günstig (no ads :), bleibt aber bisweilen hängen.

    Gibt es eine Möglichkeit (shell-script o.ä.), dass ich eine Mail bekomme oder sonst irgend eine Rückmeldung, wenn sich der Apache mal wieder verabschiedet hat?

    (Bisher habe ich den Server nur zum Testen benutzt, da war das relativ egal, aber jetzt sind zwei Homepages drauf und es wäre echt peinlich, wenn diese nicht zuverlässig erreichbar wären.)

    nenn' mir mal Deine Domain, ich richte Dir sowas ein.

    Gruß
    Reiner

    1. Hallo Reiner,

      nenn' mir mal Deine Domain, ich richte Dir sowas ein.

      Danke!

      -> Eine wäre "limo-wreck.de" (wenn auch nur 2 Seiten)

      Was genau willst Du denn einrichten? (ich lerne gerne dazu!)

      Gruss,

      Guido

      1. Hallo Reiner,

        nenn' mir mal Deine Domain, ich richte Dir sowas ein.
        Danke!

        -> Eine wäre "limo-wreck.de" (wenn auch nur 2 Seiten)

        Was genau willst Du denn einrichten? (ich lerne gerne dazu!)

        ist eingerichtet:
        Du bekommst eine Mail, wenn die Kiste ausfällt!

        Gruß
        Reiner

        1. Hallo Reiner,

          Was genau willst Du denn einrichten? (ich lerne gerne dazu!)

          ist eingerichtet:
          Du bekommst eine Mail, wenn die Kiste ausfällt!

          interessiert sicher nicht nur Guido und mich, was Du da gerade ein-
          gerichet hast. Wird die Website automatisch aufgerufen und wenn ein
          Timeout kommt, wird eine e-Mail an Guido geschickt oder wird der
          Server angepingt, in welchen Zeitabständen?

          Irgendwie finde ich Deine Hilfsbereitschaft sehr schön, aber die
          Auskunft auf Guido's Frage ist irgendwie nicht sehr umfassend ;-)

          Viele Grüße,
          Stefan

          1. Hallo Stefan und Reiner,

            ist eingerichtet:

            Vielen Dank! -> Was (...) ???

            Du bekommst eine Mail, wenn die Kiste ausfällt!

            Da ich nicht weiss, was nun letztendlich eingerichtet worden ist, dachte ich mir, es steht vielleicht in der Benachrichtigungsmail, wenn der Server ausfällt.

            Ich habe ihn also rebootet - quasi als "kurzer Ausfall", aber es kam leider keine  Mail an.

            Auskunft auf Guido's Frage ist irgendwie nicht sehr umfassend ;-)

            Bei aller Dankbarkeit muss ich mich dem anschliessen - was ist denn nun gemacht worden?

            Ich habe mich mal auf "w3research.com" umgesehen, aber ausser dem Testangebot für Webstatistiken nichts gefunden...

            Ich sehe das Forum hier nicht als Quelle für kostenlose Dienste, die andere für mich machen, sondern ich freue mich über einen Tipp/Link/Ansatzpunkt/Stichwort, um mich dann weiter durchschlagen zu können.

            Hoffend auf Antwort von Reiner :-)

            Gruss

            Guido

            P.S.:

            Es ist ja eigentlich witzig:  
            Viele Leute (gerade Einsteiger) wären wahrscheinlich sehr dankbar, wenn man ihnen anstelle eines Tipps/Lösungsansatzes einfach das entsprechende Problem mal schnell lösen würde - hier ist es mal andersherum :-)
            
          2. Hi Stefan,

            Was genau willst Du denn einrichten? (ich lerne gerne dazu!)

            ist eingerichtet:
            Du bekommst eine Mail, wenn die Kiste ausfällt!

            interessiert sicher nicht nur Guido und mich, was Du da gerade ein-
            gerichet hast. Wird die Website automatisch aufgerufen und wenn ein
            Timeout kommt, wird eine e-Mail an Guido geschickt oder wird der
            Server angepingt, in welchen Zeitabständen?

            Irgendwie finde ich Deine Hilfsbereitschaft sehr schön, aber die
            Auskunft auf Guido's Frage ist irgendwie nicht sehr umfassend ;-)

            hast Recht,
            ich mache ein Request auf den Header in mehreren Eskalationsstufen (ping würde nicht reichen!), wenn die vierte Stufe erreicht ist, gibt es eine Warnung per Mail (auch SMS möglich!). Danach läuft das Verfahren rückwärts.
            Kurz: ist der Rechner 15min offline kommt eine Warnung, er muß dann 15min am Stück online sein, damit eine Entwarnung erfolgt.
            So verhindert man, daß ein kurzer Neustart nervige Warnungen ausspuckt. Also, wenn eine kommt besteht wirklich ein Problem.

            Wir bieten das unseren Kunden als Service an.

            Gruß
            Reiner

            1. Hi Reiner,

              Danke für die Antwort!

              Darf es wagen, noch drei Fragen zu stellen?

              ich mache ein Request auf den Header in mehreren Eskalationsstufen (ping würde nicht reichen!), wenn die vierte Stufe erreicht ist, gibt es eine Warnung per Mail (auch SMS möglich!). Danach läuft das Verfahren rückwärts.

              • Request mit welchem Medium? Shellscript, PHP-Script, ... - werden die Requests alle vom gleichen Medium gesendet oder wird das aufgeteilt?

              • welche vier Eskalationsstufen sind es denn? http-request, ping,... ?

              • rückwärts im Sinne von "15min online -> Entwarnung" oder als umgedrehte Hierarchie der Eskalationsstufen?

              Wir bieten das unseren Kunden als Service an.

              Thanx again!

              Gruss,

              Guido

              1. Hi,

                Danke für die Antwort!

                Darf es wagen, noch drei Fragen zu stellen?

                ich mache ein Request auf den Header in mehreren Eskalationsstufen (ping würde nicht reichen!), wenn die vierte Stufe erreicht ist, gibt es eine Warnung per Mail (auch SMS möglich!). Danach läuft das Verfahren rückwärts.

                • Request mit welchem Medium? Shellscript, PHP-Script, ... - werden die Requests alle vom gleichen Medium gesendet oder wird das aufgeteilt?

                ein Server, ich weiß, was Du sagen willst....Was ist, wenn der selbst kein Netz hat, oder? Ja, wir prüfen auch das!
                Ist in Perl realisiert und mit Datenbank (mysql).

                • welche vier Eskalationsstufen sind es denn? http-request, ping,... ?

                alle 5min ein request, dann wird hochgezählt. Wenn Wert bei 4 gibt es eine Warnung, dann geht das wieder umgekehrt.

                • rückwärts im Sinne von "15min online -> Entwarnung" oder als umgedrehte Hierarchie der Eskalationsstufen?

                Wir bieten das unseren Kunden als Service an.
                Thanx again!

                bitte, bitte...

                Heute ist ja Feiertag, da merkt das vielleicht keiner:
                schalt doch mal eine viertel Stunde ab... ;-)

                Gruß
                Reiner

                1. Hallo Reiner,

                  Mhmmm...

                  das hat mir jetzt "den Mund wässrig gemacht"...

                  ich glaub ich versuche mal, so was als Kommandozeilen-PHP zu schreiben
                  (in Perl bin ich leider nicht bewandert...)

                  das hier scheint zu funktionieren:
                  -> macht die index.html auf und mailt mir, sobald ein Fehler auftritt.

                  zum Testen sind die Werte jetzt klein gehalten.

                  FEHLT WAS?  (ausser vielleicht noch einer log-datei?)

                  Gruss,

                  Guido

                  <?
                  $date = date(d.".".m.".".y);
                  $time = date(m.":".H);
                  print "Start am ".$date." um ".$time." Uhr\n";

                  function servertest ($url,$pause,$counter) {
                          for($i=0;$i<=$counter;$i++) {
                                  $fp = @fopen($url,"r") OR die('Achtung! Domain '.$url.' ist nicht erreichbar!');
                                  if($fp == "") {
                                          print "Konnte Domain ".$url." nicht oeffnen!\n";
                                          $message = "Domain ".$url." ist ausgefallen!\n";
                                          //Benachrichtigung schicken
                                          //mail("guido-bayer@web.de","Serverausfall!",$message)
                                  }
                                  elseif ($fp != "") {
                                          print "Habe Domain ".$url." erfolgreich geoeffnet!\n";
                                          @fclose($fp);
                                  }
                                  sleep($pause);
                          }
                  }

                  //funktion aufrufen
                  servertest('http://www.limo-wreck','1','5');
                  ?>
                  ~

                  1. <?
                    $date = date(d.".".m.".".y);
                    $time = date(m.":".H);
                    print "Start am ".$date." um ".$time." Uhr\n";

                    function servertest ($url,$pause,$counter) {
                            for($i=0;$i<=$counter;$i++) {
                                    $fp = @fopen($url,"r") OR die('Achtung! Domain '.$url.' ist nicht erreichbar!');
                                    if($fp == "") {
                                            print "Konnte Domain ".$url." nicht oeffnen!\n";
                                            $message = "Domain ".$url." ist ausgefallen!\n";
                                            //Benachrichtigung schicken
                                            //mail("guido-bayer@web.de","Serverausfall!",$message)
                                    }
                                    elseif ($fp != "") {
                                            print "Habe Domain ".$url." erfolgreich geoeffnet!\n";
                                            @fclose($fp);
                                    }
                                    sleep($pause);
                            }
                    }

                    //funktion aufrufen
                    servertest('http://www.limo-wreck','1','5');
                    ?>

                    Du prüfst 5mal, das ist aber keine Eskalation!
                    Ich kann kein PHP, aber wenn der Server weg ist, wird das "die" die Schleife wohl abbrechen, oder?

                    Gruß
                    Reiner

                    1. Hallo Reiner,

                      Du prüfst 5mal, das ist aber keine Eskalation!

                      ich habe glaubich noch nicht verstanden, was Du mit Eskalation genau meinst...

                      Könntest Du mir das bitte ein bisschen genauer erklären?

                      Ich kann kein PHP, aber wenn der Server weg ist, wird das "die" die Schleife wohl abbrechen, oder?

                      Das läuft dann als Endlosschleife auf nem anderen Server (- ggf. können die beiden sich ja gegenseitig kontrollieren...)

                      Oder übersehe ich da was?

                      Gruss

                      Guido

                      1. Hi,

                        Du prüfst 5mal, das ist aber keine Eskalation!
                        ich habe glaubich noch nicht verstanden, was Du mit Eskalation genau meinst...

                        Könntest Du mir das bitte ein bisschen genauer erklären?

                        ganz einfach:

                        Zähler = 0; online = 1; #anfangszustand

                        ######### schleifer ########
                        Prüfung: Server offline?
                                 ja -> Zähler++; # aber <= 4
                                 nein -> Zähler--; # aber >= 0
                        Zähler = 3 und Server offline?
                                 ja -> Zähler = 4; online = 0; warnung per Mail;
                        Zähler = 0 und online = 0?
                                 ja -> online = 1; entwarnung per Mail;
                        ######### schleifer ########

                        Ich kann kein PHP, aber wenn der Server weg ist, wird das "die" die Schleife wohl abbrechen, oder?
                        Das läuft dann als Endlosschleife auf nem anderen Server (- ggf. können die beiden sich ja gegenseitig kontrollieren...)

                        ja, man kann natürlich zwei Server gegenseitig kontrollieren.

                        Gruß
                        Reiner