-
-
Notifications
You must be signed in to change notification settings - Fork 24
feat(logging): dynamische Logdateibenennung des Client basierend auf YAML-Datei #135
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(logging): dynamische Logdateibenennung des Client basierend auf YAML-Datei #135
Conversation
- Logdatei wird nun zur Laufzeit anhand des Konfigurationsdateinamens gesetzt, z. B.: client1.yaml → log/client1.log - Ermöglicht parallele Ausführung mehrerer Clients mit getrennten Logs auf derselben Hardware - Der bisher fest codierte client.log entfällt - Argumente (args.config) werden nun vor dem Logging-Setup geparst - logger_client.ini bleibt erhalten; Pfad des TimedRotatingFileHandler wird nachträglich im Code gesetzt - Log-Rotation (Mitternacht, 7 Backups) funktioniert weiterhin wie konfiguriert - `disable_existing_loggers=False` verhindert das Deaktivieren benutzerdefinierter Logger in den BOSWatch-Modulen - Falls die zuvor standardmäßige placeholder-Datei `log/client.log` noch existiert und nicht mehr verwendet wird, wird sie beim Start automatisch gelöscht BREAKING CHANGE: Logging wird nicht mehr standardmäßig nach log/client.log geschrieben
|
Servus, Problemstellung: Beim Server habe ich die Änderung nicht durchgeführt, da mehrere Clients IMHO realistisch wären, mehrere Server allerdings nicht benötigt, da genau das ja die Logik am Client-Server-Prinzip ist (sofern ich richtig verstanden 😄 ) Hab es bei mir getestet und es funktioniert. Gerne kritisch prüfen und diskutieren :) |
Schrolli91
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Eben noch gesehen, die Kommentare im Code sollten der Konsistenz halber in Englisch verfasst sein. Ansonsten sieht das recht gut aus
|
Es ergab sich bei mir ein Problem, dass die Rotation des Logfiles vermutlich nicht unterstützte. Hab jetzt nochmal betroffene Codezeilen geändert und teste die Lokal für ein paar Tage, um sicherzustellen, dass es funktioniert. Bis dahin hab ich den PR mal wieder in den Draft-Zustand versetzt. Falls der Fix funktioniert, werde ich es im Repro anpassen und wieder zum Review freigeben. |
|
Super - Danke für deinen Einsatz! |
0bf5708 to
030485b
Compare
- Logdateipfad wird vor dem Aufruf von fileConfig() über builtins.log_filename gesetzt - Entfernt manuelles Patchen des Loghandlers (BaseFilename, Stream etc.) nach dem Laden - Logging-Konfiguration (logger_client.ini) wird nur noch einmal geladen - logger_*.ini: Korrektur: interval=midnight ist nicht (mehr) offiziell unterstützt, Änderung auf korrekte Schreibweise (when=midnight, interval=1) - Ändern der Kommentare auf Englisch (stringent zu anderen Kommentaren)
030485b to
34fd0c2
Compare
KoenigMjr
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So, hab nun mir das Verhalten ein paar Tage angesehen und bei mir funktioniert es nach den letzten Änderungen wie gewünscht :)
Schrolli91
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
disable_existing_loggers=Falseverhindert das Deaktivieren benutzerdefinierter Logger in den BOSWatch-Modulenlog/client.lognoch existiert und nicht mehr verwendet wird, wird sie beim Start automatisch gelöschtBREAKING CHANGE: Logging wird nicht mehr standardmäßig nach log/client.log geschrieben