Mini Watchdog für einzelne Prozesse (13.02.14)

Dieser Beitrag wurde 4542 mal angezeigt.

Mini Watchdog für einzelne ProzesseWatchDog

Hy Leute,

ich habe mal einen kleinen Wachhund geschrieben der einzelne Programme überwacht.

Wer sich nicht mit der Problematik des Linux und des Konfigurierens auseinandersetzen möchte,
darf sich gerne mein Angebot ansehen und ein komplett eingerichteten Pi oder Image bekommen.

Warum?

Nun, nachdem der BFGMiner bei den ANTMinern nicht gerade die Leistung bringt,
die er eigentlich haben sollte, habe ich mich entschieden wieder auf den CGMiner zu setzen.

Dieser wurde aber nachdem ich mein Raspcontrol durch eine SQLite Datenbank und einem Apache Server erweitert hatte, zunehmend instabil.
Der CGMiner schmierte ab, ohne den Pi mit zu nehmen. Also griff der große Wachhund, Watchdog nicht. Der Pi lief weiter frei herum und arbeitete nicht mehr.

Also was machen?

Ein kleiner Wachhund muss her, der sich nur um 1 Programm kümmert. Wenn dieses nicht mehr da ist, soll er den ganzen Pi per Reboot neu starten.
Der Grund ist, das wenn der CGMiner abschmiert, er die USB-Ports weiterhin blockiert und nicht wieder frei gibt.

Nun zum eingemachten

Wir verbinden uns per Shell auf den Pi und wechseln in das Home/Pi Verzeichnis.

Nun fügen wir dieses hier ein :

und speichern diese Datei mit Strg-X und anschließend “y” oder “j” fürs speichern.

Nun müssen wir unsere Datei noch ausführbar machen:

 Was bedeuten unsere Fälle?

Fall 0 = Was soll gemacht werden wenn der Prozess “cgminer” nicht läuft.

Fall 1 = Was soll gemacht werden, wenn das Programm läuft.

Fall * = Was soll gemacht werden, wenn das Programm mehrfach läuft.

 

Mit diesem Wissen können wir also noch andere Programme beobachten z.b. den BFGMiner oder Apache2 , wenn wir wollen.

Im Minutentakt kontrollieren.

Damit unser Mini Watchdog auch regelmäßig nach dem rechten schaut, muss es ihm jemand sagen.

Dazu öffnen wir unsere /etc/crontab

und fügen ans Ende der File dieses ein:

und schließen nano wieder. Nun wird unser Wachhund jede Minute auf unseren CGMiner los gelassen und wenn dieser fein seine Arbeit macht, ist alles gut. Wenn nicht, gibs nen reboot 🙂

 

Viel Spass beim minen!

 

Ich hoffe euch hat mein Beitrag gefallen.

Wenn dir mein Beitrag gefallen und geholfen hat dich besser in der Welt der Bitcoins zurecht zu finden, würde ich mich freuen wenn ihr meine Seite und mein Wochenende durch eine kleine Spende unterstützt.
Mit der neusten Bitcoin-Wallet oder auf Blockchain.info/wallet ist es möglich auch CENT Beträge (µBTC) ohne Mining-Gebühren zu senden.

Wer gerne etwas für die Kaffee/Bier Trinkgeld Kasse und Erhalt der Seite spenden möchte :
BTC: 1LvETe6uTP64hK3UR3oSAdzT5ZjLnttqBm
DEM: NWtFftChrx28mvYgqfopmDejxoHiZmAK7u

Tags: , , , , , , , , , , , , ,

Über Sven

- Du hast Fragen? - Do you have a question? - Dir hat mein Beitrag geholfen? - If my articles helped you : - Spend me a Beer ;)

6 Responses zu “Mini Watchdog für einzelne Prozesse (13.02.14)”

  1. Itow 14. Februar 2014 at 20:04 #

    Hiho 😉

    Hab eine Frage und ein Hinweis

    Hinweis : Zur Minutentakt kontolle ist es nicht einfache mit (sudo crontab -e) zu arbeiten da könnte der cron eintrag so
    ( */1 * * * * /home/pi/Scripte/apache2-checkrun.sh) aussehen

    Frage : Muss man für jeden Service ein nees Script anlegen oder kann man es in einem Script zussammen fassen falls ja wie müsste das ungefähr mit cgminer und apache2 aussehn ?

    Besten Dank für deine tolle Arbeit
    Gruß Itow

  2. Baschdi 24. März 2014 at 10:57 #

    Hallo Sven,

    Das ist ja perfekt der Wachhund 🙂
    Habe festgestellt das bei einem reboot, die 1min nicht aussreicht um den CGMiner zu starten, dadurch macht er immer wieder einen rebbot nach 1 min. Spricht eigentlich etwas dagegen den Wachhund nur alle 5 min auzuführen?

    • Sven 24. März 2014 at 19:28 #

      Moin,

      Ganz und garnicht.

      Du kannst selbst entscheiden wann dieser prüfen soll.

      z.b. */5 * * * * ... dann prüft er alle 5 min.

      Beste Grüße,

  3. Andi 30. Dezember 2015 at 00:47 #

    funktioniert der watchdog eigtl. mit der aktuellen cgminer version?,
    bei mir stürzt der cgminer trotz watchdog und mini watchdog ca. alle 24 std ab.
    kann man da evtl. ne log auslesen das man sehen kann woran das liegt?
    bin noch relativ neu in der materie…
    so weit ich weiß kommt ab und zu der fehler: GetResults usb read err:(-1) LIBUSB_ERROR_IO
    attempted reset got err:(0) LIBUSB_SUCCESS

    • Sven 30. Dezember 2015 at 01:01 #

      Hy Andi,

      der Mini Watchdog ist nur ein Shell Script, das per Cronjob aufgerufen wird.
      Das Script prüft, ob es ein Programm mit dem entsprechenden Namen gibt.

      0) = Es wurde kein Prozess mit dem Namen gefunden.
      In der selben Zeile steht echo …. >> … log/cgminer.txt Das heißt er loggt das es einen Restart gab mit Zeitangabe.
      In der nächsten Zeile steht der Befehl der ausgeführt wird. Reboot. Also das System neustarten. Du kannst natürlich auch nur den Prozess neustarten, aber es kann halt sein das die USB geräte blockiert sind, und die werden nur durch einen Reboot wieder sauber frei.

      • Andi 30. Dezember 2015 at 01:43 #

        ja, soweit hab ich das ja verstanden, hab ihn auch auf 5 min gestellt nur weiß ich nicht genau, muss hier den / mit einfügen oder nicht?,
        nur wundert mich wieso weder der watchdog greift wenn der cgminer voll abschmiert noch der mini watchdog das er den prozess neustartet.
        Zur info: hab 3 antminer u3 direkt an einen pi b+ ohne usb hub hängen, hab noch einen 2er – hier kommt jedeoch das selbe problem. Hab es auch mit minera probiert da kommt auch das selbe. USB strom kabel + netzteil habe ich schon mehrfach gegen hochwertige getauscht, nur die usb kabel zu den minern noch nicht. Kann es vielleicht an den kabeln liegen? oder ist es ein reines software problem, kann man das sagen?

        gruß

Schreibe einen Kommentar

Blog Archiv