Log2Syslog: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
K (Kategorie "Automatisierung" entfernt (existiert nicht und ist auch nicht geplant)) |
||
Zeile 6: | Zeile 6: | ||
|ModFTopic= | |ModFTopic= | ||
|ModTechName=93_Log2Syslog.pm | |ModTechName=93_Log2Syslog.pm | ||
|ModOwner= {{Link2FU|16933| | |ModOwner=DS_Starter ({{Link2FU|16933|Forum}} / [[Benutzer Diskussion:DS_Starter|Wiki]])}} | ||
{{Baustelle}} | {{Baustelle}} | ||
Zeile 12: | Zeile 12: | ||
==Einführung== | ==Einführung== | ||
{{Randnotiz|RNTyp=w|RNText=Das Modul kann ab 01.03.2021 als v5.12.4 via Update bezogen werden.}} | {{Randnotiz|RNTyp=w|RNText=Das Modul kann ab 01.03.2021 als v5.12.4 via Update bezogen werden.}} | ||
Das Modul sendet FHEM Systemlog-Einträge und/oder Events an einen externen Syslog-Server weiter oder agiert als Syslog-Server um Syslog-Meldungen anderer Geräte zu empfangen. | Das Modul [[Log2Syslog]] sendet FHEM Systemlog-Einträge und/oder Events an einen externen Syslog-Server weiter oder agiert als Syslog-Server um Syslog-Meldungen anderer Geräte zu empfangen. | ||
Die Implementierung des Syslog-Protokolls erfolgte entsprechend den Vorgaben von RFC5424 (IETF)<ref>https://tools.ietf.org/html/rfc5424</ref>, RFC3164 (BSD)<ref>https://tools.ietf.org/html/rfc3164</ref> sowie dem TLS Transport Protokoll nach RFC5425<ref>https://tools.ietf.org/pdf/rfc5425.pdf</ref>. | Die Implementierung des Syslog-Protokolls erfolgte entsprechend den Vorgaben von RFC5424 (IETF)<ref>https://tools.ietf.org/html/rfc5424</ref>, RFC3164 (BSD)<ref>https://tools.ietf.org/html/rfc3164</ref> sowie dem TLS Transport Protokoll nach RFC5425<ref>https://tools.ietf.org/pdf/rfc5425.pdf</ref>. | ||
==Voraussetzungen== | ==Voraussetzungen== | ||
Es werden die Perl Module "IO::Socket::INET" und "IO::Socket::SSL" (wenn SSL benutzt) benötigt und müssen installiert sein. | Es werden die Perl Module "IO::Socket::INET" und "IO::Socket::SSL" (wenn SSL benutzt) benötigt und müssen installiert sein. | ||
Das Modul kann über CPAN oder, auf Debian Linux Systemen | Das Modul kann über CPAN oder, auf Debian Linux Systemen besser mit | ||
:<code>sudo apt-get install libio-socket-multicast-perl</code> | :<code>sudo apt-get install libio-socket-multicast-perl</code> | ||
Zeile 30: | Zeile 28: | ||
Der Collector empfängt Meldungen im Syslog-Format anderer Geräte und generiert daraus Events/Readings zur Weiterverarbeitung in FHEM. Das Sender-Device leitet FHEM Systemlog Einträge und/oder Events an einen externen Syslog-Server weiter. | Der Collector empfängt Meldungen im Syslog-Format anderer Geräte und generiert daraus Events/Readings zur Weiterverarbeitung in FHEM. Das Sender-Device leitet FHEM Systemlog Einträge und/oder Events an einen externen Syslog-Server weiter. | ||
Siehe commandref | Siehe {{Link2CmdRef|Anker=Log2Syslog|Label=commandref}}. | ||
=== Attribut useEOF === | === Attribut useEOF === | ||
Model Sender (Protokoll TCP): | Model Sender (Protokoll TCP): | ||
Nach jedem Sendevorgang wird eine TCP-Verbindung mit EOF beendet. | Nach jedem Sendevorgang wird eine TCP-Verbindung mit EOF beendet. | ||
Zeile 64: | Zeile 61: | ||
== Links == | == Links == | ||
<references/> | <references/> | ||
Version vom 8. März 2021, 08:14 Uhr
Log2Syslog | |
---|---|
Zweck / Funktion | |
Senden und Empfangen von Syslog-Meldungen | |
Allgemein | |
Typ | Hilfsmodul |
Details | |
Dokumentation | EN / DE |
Support (Forum) | Automatisierung |
Modulname | 93_Log2Syslog.pm |
Ersteller | DS_Starter (Forum / Wiki) |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
An dieser Seite wird momentan noch gearbeitet. |
Einführung
Das Modul Log2Syslog sendet FHEM Systemlog-Einträge und/oder Events an einen externen Syslog-Server weiter oder agiert als Syslog-Server um Syslog-Meldungen anderer Geräte zu empfangen. Die Implementierung des Syslog-Protokolls erfolgte entsprechend den Vorgaben von RFC5424 (IETF)[1], RFC3164 (BSD)[2] sowie dem TLS Transport Protokoll nach RFC5425[3].
Voraussetzungen
Es werden die Perl Module "IO::Socket::INET" und "IO::Socket::SSL" (wenn SSL benutzt) benötigt und müssen installiert sein. Das Modul kann über CPAN oder, auf Debian Linux Systemen besser mit
sudo apt-get install libio-socket-multicast-perl
sudo apt-get install libio-socket-ssl-perl
installiert werden.
Definition und Verwendung
Je nach Verwendungszweck kann ein Syslog-Server (MODEL Collector) oder ein Syslog-Client (MODEL Sender) definiert werden. Der Collector empfängt Meldungen im Syslog-Format anderer Geräte und generiert daraus Events/Readings zur Weiterverarbeitung in FHEM. Das Sender-Device leitet FHEM Systemlog Einträge und/oder Events an einen externen Syslog-Server weiter.
Siehe commandref.
Attribut useEOF
Model Sender (Protokoll TCP): Nach jedem Sendevorgang wird eine TCP-Verbindung mit EOF beendet.
Model Collector: Wenn gesetzt wird mit dem Parsing gewartet, bis der Sender ein EOF Signal gesendet hat. CRLF wird nicht als Datentrenner berücksichtigt. Anwendungsbeispiel (Webcam Technaxx TX-66 meldet einen Bewegungsalarm):
2021.03.06 23:00:17 5: Log2Syslog SyslogServer - Buffer 127 chars ready to parse: <166> Mar 06 23:00:17 192.168.178.136 "EventStop" { "Code" : "VideoMotion", "Index" : 1, "RegionName" : [ "Tuer" ] }
Wenn nicht gesetzt, wird CRLF als Trennung von Datensätzen gewertet. ParseFn wird pro Zeile aufgerufen:
2021-02-22 09:54:53 Log2Syslog SyslogServer cam1.fritz.box: <182> Feb 22 09:54:53 192.168.178.138 "EventStart" 2021-02-22 09:54:53 Log2Syslog SyslogServer cam1.fritz.box: { 2021-02-22 09:54:53 Log2Syslog SyslogServer cam1.fritz.box: "Code" : "VideoMotion", 2021-02-22 09:54:53 Log2Syslog SyslogServer cam1.fritz.box: "Index" : 1, 2021-02-22 09:54:53 Log2Syslog SyslogServer cam1.fritz.box: "RegionName" : [ "Tor" ] 2021-02-22 09:54:53 Log2Syslog SyslogServer cam1.fritz.box: }
Hinweis: Wenn der Sender kein EOF verwendet, wird nach Überschreiten eines Puffer-Schwellenwertes das Parsing der Daten erzwungen und die Warnung "Buffer overrun" im FHEM Log ausgegeben.
Anwendungsbeispiele
- Erzeugen von zentralen Logberichten z.B. auf einer Synology Station
- Einsammeln von Statusmeldungen und Bewegungsalarmen von Überwachungskameras, die Syslog-Meldungen versenden