Hallo Leute,
hab mir einen LogHandler für IPS geschrieben und weil ich mir dachte, der könnte auch für andere interessant sein, hab ich ein auch gleich ein Installations Script geschrieben.
Habe meine Logs in verschiedene Kategorien bzw. Levels unterteilt, je höher der Level desto detailierter die Protokolierung:
[ul]
[li]Fatal – Schwerwiegende Fehler (LogLevel=0)
[/li][li]Error – „Normale“ Fehler (LogLevel=1)
[/li][li]Warning – Warnungen (LogLevel=2)
[/li][li]Notification – Warnungen (LogLevel=3)
[/li][li]Information – Informationsmeldungen, zur Protokollierung von Schaltvorgängen usw. (LogLevel=4)
[/li][li]Debug – Debug Meldungen (LogLevel=5)
[/li][li]Communication – Protokollierung von Kommunikations Instanzen (Senden/Empfangen über RS232, Sockets, …) (LogLevel=6)
[/li][li]Trace – Sehr detailierte Meldungen, um diverse Ablauffehler zu finden (LogLevel=7)
[/li][li]Test – Test Meldungen – verwende ich nur temporär um Fehler zu finden, man kann nach diesen Meldungen suchen und sie nach finden des Fehlerers wieder entfernen(LogLevel=8)
[/li][/ul]
Unterstütze zur Zeit 8 verschiedene Outputs, für jeden kann man den LogLevel spezifisch definieren:
[ul]
[li]SingleMsg Output: enthält die letzte LogMeldung, vorgesehen als Widget, um sofort auf einen Fehler aufmerksam gemacht zu werden (verwendung von LogLevel Error oder Warning). Anzeige der Meldung kann durch Klick auf die Meldung Quittiert/Resetet werden.
[/li][li]Html Output: Output in HTML Form zur Verwendung im WebFront, Anzahl der Messages kann konfiguriert werden
[/li][li]IPS Output: IPS interner Logging Output
[/li][li]File Output: Protokollierung in ein File, für jeden Tag wird ein neues LogFile angelegt, Anzahl der Tage kann definiert werden, danach werden die Files autom. gelöscht. Standardmäßig wird in das IPS „logs“ Verzeichnis gelogged, kann aber über eine Konstante auch verändert werden.
[/li][li]Log4IPS Output: XML Protokollierung, die sich an die allgemein bekannte Form Log4Net,Log4Java usw. anlehnt. Ansehen kann man sich das File am besten mit diversen Tools (ich persönlich verwende Log4View, freie Version kann man sich auf der Homepage des Herstellers Log4View downloaden ).
[/li][li]Email Output: Bietet die Möglichkeit sich über Fehler im System per Email informieren zu lassen. Ein Sende Verzögerung kann konfiguriert werden, bei 0 wird bei jedem Fehler (wenn LogLevel auf Error) sofort gesendet, ansonsten wird die angegebene Zeit gewartet und danach alle aufgetretenen Fehler als Liste versandt. Um den Email Output verwenden zu können muß man im File IPSLogger_Constants die ID für das SMTP Device eintragen. Optional kann man auch noch 1-3 Email Adressen eingtragen, standardmäßig wird der Emfänger verwendet, der im Device angegeben ist. Vorsicht: bei Delay 0 kann man sich potenziell einen Spam-Server basteln falls man irgenwo einen Endlos-Loop mit Fehler hat …
[/li][li]Echo Output: Echo Output, kann in der Entwicklungs Phase von Scripten genützt werden.
[/li][li]Prowl Output: Ermöglicht das Senden von Messages direkt auf das iPhone.
[/li][/ul]
Installation:
siehe Wiki: /wiki/IPSLogger
Best Practice zur Verwendung des Loggers:
siehe Wiki: /wiki/IPSLogger
Vor der Installation natürlich Backup machen.
lg
Andreas