wie kann ich bei der Version 2.60 spezielle Log-Einträge vermeiden bzw. reduzieren?
Hintergrund: ich hab hier einen Server im LAN, der mir ca. 5x pro Minute per HTTP-Get Meßinformationen auf einen Server Socket zusendet.
Im IPS-Logfile hab ich dann 5 Meldungen pro Minute, die mir den Überblick über wirkliche Fehlermeldungen nehmen:
Bei der vorhergehenden Version konnte ich die Datei settings.xml editieren; bei der aktuellen Version 2.60 müßte sowas in settings.json möglich sein, dafür fehlt mir aber ein Editor oder anderes Tool.
(Der Filter in der Ansicht „Meldungen“ ist nicht ausreichend, weil dieses Einstellungen nur für die aktuelle Konsole während ihrer Lenbenszeit gültig sind und die Einträge trotzdem in z.B. logfile1356825600.log abgespeichert werden).
Je nachdem was bzw. wer sendet könntest du auf UDP umstellen. Das ist zustandslos, daher auch keine Connect-Meldungen. Hatte ich mit meinen Netcat-Sachen unter Linux gemacht und freue mich seitdem über ein aufgeräumteres Log…
Spezialschalter
Benötigt: IP-Symcon >= 2.6
Um einige Funktionen von IP-Symcon besser kontrollieren zu können, ist es möglich, einige Schalter über die Einstellungen innerhalb der Tray-Applikation zu verändern.
Kann ich nicht erkennen, wo diese Schalter bei der Version 2.60 lokalisiert sind (rechte Maustaste bringt nur Dienst starten/beenden, LiveUpdate, Info, Konsole öffnen), bei Version < 2.60 konnte man die die Datei settings.xml editieren (bei Auslieferung war u.a. bei mir LogfileVerbose aktiviert).
Ist mir unklar, welche der beschriebenen Schalter ich betätigen müßte, um die Meldungen zu „Client verbunden“ zu unterdrücken:
[ul]
[li]LogfileVerbose
[/li]Sofern aktiviert, werden alle Meldungen ins Logfile geschrieben. Sofern deaktiviert, werden alle Meldungen außer KL_DEBUG ins Logfile geschrieben.
[li]VariableWatch
[/li]Sofern aktiviert, werden Wertänderungen/-aktualisierungen aller Variablen ins Logfile geschrieben. Sofern deaktiviert, werden diese nicht in das Logfile geschrieben.
[li]ScriptWatch
[/li]Sofern aktiviert, werden Skriptausführungen im Logfile protokolliert. Sofern deaktiviert, werden keine Skriptausführungen protokolliert. Fehler und Ausgaben (z.B. über echo) werden immer protokolliert.
[li]MessageQueueWatch
[/li]Sofern aktiviert, werden die Verzögerungszeiten der internen Verarbeitungsqueue im Logfile protokolliert. Sofern deaktiviert, werden diese nicht protokolliert.
[li]ThreadCount …
[/li][li]SaveInterval …
[/li][li]BackupCount …
[/li][li]LogfileCount …
[/li][/ul]
M.E. müßte dieser Protokoll-Filter im Socket-Modul implementiert werden, z.B. als Liste „vertrauenswürdiger Nodes“, deren Aktivität nicht protokolliert wird.
Ich habe bei mir alle Häkchen entfernt und IPS logged immer noch fleißig… Allerdings nur noch „connection timeouts“ und Socket Fehler. Die würde ich aber gerne auch aussschalten können, denn meine WebCams laufen nun mal nicht rund um die Uhr und das ist kein Fehler…
Was ich auch etwas komisch finde: Wenn ich in der Console bei „Meldungen“ den Filter ändere und z.B. keine Statusmeldungen mehr angezeigt bekommen möchte und das dann gleich danach wieder zurück ändere, kommen die Meldungen nicht mehr wieder. Scheinbar sind die gelöscht… Dabei hab’ ich doch nur einen Filter angepasst…
Hat eigentlich jemand Erfahrungen mit der Einbindung eines umfangreicheren Logging-Frameworks, z.B. LOG4PHP?
Und noch eine Frage, die aber nur entfernt damit zusammen hängt: Kann man eigentlich Parameter an IPS Scripte übergeben oder geht das nur über den Umweg von Variablen… Dann könnte man sich so ein FW schnell selber schreiben…
Hier würde ich zur selben Zeit wo die CAMs vom Netz gehen den entsprechenden Socket deaktivieren. Wie Du erkannt hast bringt das erstens eine Menge an Logging-Müll und zweitens besteht die Gefahr evtl. toter Threads.
Also alles was nicht benötigt wird, und erst Recht wenn es Fehler produziert, würde ich deaktivieren.