Beiträge von Nastra

    Hallo zusammen,


    da es meine ersten schritte auf dem Gebiet der Shell Skript Erstellung gewesen sind und vieles Neuland für mich gewesen ist freue ich mich, heute um so mehr, hier wieder zwei tolle Tools anbieten zu können für euer Homebridge Setup.


    Anforderungen:

    - Beide Tools benötigen ein Telegram Account mit eingerichtetem Bot.

    - Eine Anleitung zum Bot erstellen findet ihr hier:

    https://praxistipps.chip.de/te…-erstellen-so-gehts_99599


    - Tool reporter.sh benötigt Homebridge als systemd Service eingerichtet. Init.d wird nicht unterstützt.



    Funktionen:


    reporter.sh

    - Überwachen von Homebridge Instanzen

    - Linux Multiuser tauglich

    - Ausführen einer Aktion auf Grundlage eines Ereignis

    - Benachrichtigen per Telegram


    logwatch.sh

    - System Zusammenfassung erstellen über die Software Logwatch

    - Homebridge Plugin Updates anzeigen

    - System und Pakete Update anzeigen

    - Linux Multiuser tauglich

    - Benachrichtigen per Telegram




    Hinweis:

    - Die Software ntfy wird nicht mehr benötigt wie bei meinem ersten Anlauf, es wird jetzt direkt auf die API von Telegram zugegriffen.

    Homebridge & Systemüberwachung mit ntfy und Telegram Push (systemd)

    - Eine detaillierte Erklärung der einzelnen Funktionen bzw. Abschnitte der Tools befinden sich im Skript.


    Installation:

    - Manuell gem. dieser Anleitung

    - Automatisch über das hbridge_install Tool



    Tool: reporter.sh

    Beschreibung:

    Das Tool reporter.sh ermöglicht eine Live Überwachung jeder einzelnen Instanz eurer Homebridge sowie eine Überwachung jeglicher Art von Ereignissen die im Journalctl mitgeschrieben werden. Beim Auftreten eines Ereignis z.B. der Ausfall einer Instanz wird direkt eine Nachricht an Telegram gesendet mit der jeweiligen Bezeichnung der Instanz. Außerdem ist es möglich beim Eintreten eines Ereignis zusätzlich zu der Nachricht an Telegram eine Aktion auszuführen, z.B. ein Restart etc.


    Das Skript ist ausgelegt mit der hbridge.cfg Config eingerichtet zu werden, es kann aber auch ohne diese benutzt werden wenn die entsprechenden Daten hier im Skript angegeben werden.




    Was mir besonders gut gefällt bei diesem Tool, ist das hier zusätzlich die Möglichkeit besteht eine Nachrichtenbegrenzung festzulegen. Was bedeutet das genau, normalerweise startet ein Homebridge Dienst alle 10 Sek neu dadurch würde alle 10 Sek eine Nachricht versendet werden. Ziemlich nervig Nachts ;)

    Durch die Nachrichtenbegrenzung besteht die Möglichkeit vorzugeben das nur alle x Zeit eine Nachricht versendet wird solang das Ereignis weiter existiert.


    Anleitung:


    Schritt 1: (reporter.sh Skript anlegen)


    Datei anlegen:
    sudo nano /usr/local/bin/reporter.sh


    Skript einfügen, speichern und Schreibrechte vergeben

    sudo chmod 755 /usr/local/bin/reporter.sh


    Download:

    reporter.sh.txt


    Schritt 2: (reporter.service anlegen)


    Datei anlegen:

    sudo nano /etc/systemd/system/reporter.service


    Service Unit einfügen und in der Zeile User=pi den Benutzernamen ändern bei dem der Ordner hbridge_install liegt. Anschließend speichern.


    Schritt 3: (reporter.service aktivieren und starten)


    Befehle:

    sudo systemctl daemon-reload

    sudo systemctl enable reporter.service

    sudo systemctl restart reporter.service


    Ab jetzt ist die Überwachung durch das reporter.sh Tool bei jedem System Start automatisch aktiviert und es wird eine Benachrichtigung gemäß der festgelegten Suchbegriffe auf ein Ereignis erfolgen. Eine Benachrichtigung über denn regulären Start oder Stopp einer Homebridge / Instanz erfolgt nicht. Nur bei Absturz. Sollte das gewünscht sein muss der Suchbegriff dementsprechend erweitert oder geändert werden.


    Manuell getestet werden kann der Homebridge Ausfall z.B. durch einen Fehler in der Config.json und einem restart der Homebridge.



    Tool: logwatch.sh

    Beschreibung:

    Das Tool logwatch.sh ermöglicht in Zusammenarbeit mit der Software Logwatch eine tägliche Zusammenfassung der System Logdateien. Es werden alle wichtigen Ereignisse gebündelt und per Telegram versendete.

    Zusätzlich wird noch eine Zusammenfassung über ausstehende Firmware, Pakete, node und npm (Plugin) Updates versendet.




    Anleitung:


    Schritt 1: (Logwatch, npm-check und n Software Installieren)


    Befehl ausführen:

    sudo apt-get update

    sudo apt-get install logwatch

    sudo npm install -g n

    sudo npm install -g npm-check

    Config Datei öffnen:

    sudo nano /usr/share/logwatch/default.conf/logwatch.conf

    Zeile Detail ändern in High.



    Schritt 2: (logwatch.sh Skript anlegen)


    Datei anlegen:

    sudo nano /usr/local/bin/logwatch.sh


    Skript einfügen, speichern und Schreibrechte vergeben

    sudo chmod 755 /usr/local/bin/logwatch.sh


    Download

    logwatch.sh.txt



    Schritt 3: (logwatch.service anlegen)


    Datei anlegen:

    sudo nano /etc/systemd/system/logwatch.service


    Service Unit einfügen und speichern.


    Schritt 4: (logwatch.timer anlegen)


    Datei anlegen:

    sudo nano /etc/systemd/system/logwatch.timer


    Timer Unit einfügen und speichern.

    Code: logwatch.timer
    [Unit]
    Description=logwatch.timer
    
    [Timer]
    Unit=logwatch.service
    OnCalendar=Mon-Sun *-*-* 03:00:00
    
    [Install]
    WantedBy=timers.target

    In der Zeile OnCalendar=Mon-Sun *-*-* 03:00:00 wird eingestellt wann der Timer denn logwatch.service ausführt und eine Logwatch Zusammenfassung versendet wird. In der Vorlage wird Täglich um 03:00 Uhr Nachts eine Logwatch Zusammenfassung gesendet.


    Verschiedene Möglichkeiten wie die Zeile OnCalender angepasst werden kann gibt es hier oder bei Google.



    Schritt 5: (logwatch.timer aktivieren und starten)


    sudo systemctl daemon-reload

    sudo systemctl enable logwatch.timer

    sudo systemctl restart logwatch.timer


    Prüfen ob Timer aktiviert ist:

    systemctl list-timers --all



    Manuell getestet werden kann die Funktiontüchtigkeit durch Eingabe von sudo /bin/bash /usr/local/bin/logwatch.shim Terminal.


    Schlusswort:

    Diese beiden Tools bieten auf relativ einfache weise eine Möglichkeit euer komplettes System und das zugehörige Homebridge Setup zu Überwachen. Ich hoffe es gefällt euch :)



    Gruß Nastra

    Ich habe mich oben geirrt bzw. selber auch einen Fehler bei mir in der Config:


    humidityAlert Optional contact sensor. This sensor will be opened when humidity is below humidityAlertLevel. Optional
    humidityAlertLevel Humidity level in percent used to trigger the humidityAlert contact sensor. Default value is 20.


    "humidityLevel": true,

    "humidityAlertLevel": 20,


    so wäre richtig, die 20 kannst du variabel anpassen wann der Sensor auslösen soll.