Anomalie #2708
Gérer les logs des agents zéphir
Description
Suite à 2020a7c6
Il semble que ce soit twisted qui gère la rotation des logs aujourd’hui.
Il y a déjà un logrotate pour les actions, on peut étendre ce fichier mais il faut voir comment ça fonctionne du côté de twisted.
Related issues
Associated revisions
Utilisation de syslog pour les logs des agents Zéphir (ref #2708)
correction d'un message d'erreur à la fermeture de z_stats suite à la modification du système de logs (fixes #2708)
ajout du log rsyslog/local/zephiragents.log dans la configuration logrotate (ref #2708)
History
#1 Updated by Joël Cuissinat over 11 years ago
- Target version changed from Mises à jour 2.2.3 - 04 RC to Mises à jour 2.3.4 RC
#2 Updated by Daniel Dehennin over 11 years ago
- Target version changed from Mises à jour 2.3.4 RC to Mises à jour 2.3.5 RC
Non urgent.
#3 Updated by Bruno Boiget over 11 years ago
- Assigned To set to Bruno Boiget
Les logs sont gérés par twistd (idem pour eole-sso, ead, ...)
Il est possible de passer par rsyslog avec les modifs suivantes:
- avec twistd :
remplacer --logfile <fichier> par --syslog dans les options passées à twistd (tout va être loggué dans syslog). Il n'y a pas moyen de passer des options supplémentaires.
pour contourner le pb, à l'initialisation du service (par exemple dans makeService ou startService), faire la manip suivante:
from twisted.python import log, syslog old_obs = log.theLogPublisher.observers[0] (récupère l'entrée générée par twistd) new_obs = syslog.SyslogObserver('zephiragents', options=syslog.DEFAULT_OPTIONS, facility=syslog.DEFAULT_FACILITY) log.addObserver(new_obs.emit) (ajout du nouvel observeur avec les bonnes options) log.removeObserver(old_obs)avec ces modifications,rsyslog va envoyer les logs générés par log.msg dans /var/log/rsyslog/local/zephiragents/zephiragents.infos.log (zephiragents.alert.log avec la fonction log.err)
- sans twistd:
pour les services qui n'utilisent pas twistd (.tac ou fichiers python), on peut initialiser directement le bon logger:
from twisted.python import log, syslog syslog.startLogging('zephiragents')
--> à factoriser dans pyeole.log si possible
#4 Updated by Bruno Boiget over 11 years ago
- Status changed from Nouveau to Résolu
- % Done changed from 0 to 100
Appliqué par commit 297940062f670d2f0793dd19c6e1afadd4cf8e42.
#5 Updated by Fabrice Barconnière over 11 years ago
- Status changed from Résolu to Fermé