watchdog eines dienstes

  • hi alle,


    ein selten aber regelmäßig "abstürzender" dienst schreibt in diesem fall "timeout" (ohne "") in sein log.


    beim initiallisieren des dienstes erscheint "timeout" auch 1-n mal, ohne dass dies abgefangen werden soll.


    sagen wir mal beim 10ten "timeout" soll der dienst beendet und neu gestartet werden.


    wie bekomme ich das denn hin? :schiel


    stelle mir was in dieser art vor (kommt das "timeout" in hochkommata?):


    #!/bin/sh
    tail -f /var/log/log | grep --line-buffered 'timeout' ; do
    echo "MARK" >> /var/log/log
    /etc/init.d/dienst stop
    /bin/sleep 20
    /etc/init.d/dienst start
    done


    thx


    bernd

    --------------------------------
    aktuelle Konfiguration:
    SERVER-VDR:suse10, kernel:2.6.5, DVB-treiber: kerneleigener, vdr-1.4.0 plain + noad + and. Serverdienste, 2*Nova-S-SE Rev:1.0, gesteuert via xxv-4.0, hda3-->/video0
    CLIENT-VDR: activy-300 mit gen2vdr1.2 (thx@helau+activy-300), hda3-->/video0
    nfs-mounts:
    server:/video0 --> client:/video0/SERVER_NEU
    server:/hdc1 --> client:/video0/FILME
    server:/hdd1 --> client:/video0/SERIEN
    SERVER läuft 24/7, CLIENT bei Bedarf

  • schau dir doch mal die scripte von fail2ban an, da wird da syslog nach bestimmten Begriffen gescannt und daraufhin Aktionen eingeleitet. Vielleicht ist da 90% der Arbeit schon fertig für dich.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!