La mise à jour de rsyslog sur Amazon Linux traite soudainement les messages de niveau INFO comme EMERG

J'ai un problème étrange avec rsyslog sur certaines de mes instances EC2 exécutant Amazon Linux 2012.3. Après la mise à jour du rsyslog 4.6 à 5.8.10, il semble que tout message de journal du niveau INFO soit soudainement traité comme un problème de niveau EMERG et qu'ils soient diffusés partout. *.emerg * de /etc/rsyslog.conf squelches les messages, mais évidemment, ce n'est pas une solution.

Les messages ressemblent à ceci:

 Message from syslogd@hostname at Jul 13 19:35:07 ... ¿<14>processname[1696]: INFO <yadayadayada> 

La plupart de mes loggings proviennent d'un enregistreur Python 2.6 avec un logging.handler.SysLogHandler, dont la configuration a été publiée ci-dessous. Je n'ai eu aucune chance de find d'autres informations sur ce problème spécifique en ligne, et la seule chose qui semble résoudre le problème pour moi est de returnner à rsyslog 4.6, qui résout instantanément le problème. Ce n'est pas une tragédie si je suis coincé avec 4.6, mais ce problème est très déconcertant et me fait me requestr si j'ai mal configuré quelque chose qui vient de prendre jusqu'à ce que je me suis mis à jour pour lancer sa tête.

Voici mon rsyslog.conf:

 #### MODULES #### $ModLoad imuxsock # provides support for local system logging (eg via logger command) $ModLoad imklog # provides kernel logging support (previously done by rklogd) #### GLOBAL DIRECTIVES #### $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat $IncludeConfig /etc/rsyslog.d/*.conf # this directory is empty #### RULES #### kern.* /dev/console # Log anything (except mail) of level info or higher. # Don't log private authentication messages! *.info;mail.none;authpriv.none;cron.none /var/log/messages # The authpriv file has ressortingcted access. authpriv.* /var/log/secure # Log all the mail messages in one place. mail.* -/var/log/maillog # Log cron stuff cron.* /var/log/cron # Everybody gets emergency messages *.emerg * # Save news errors of level crit and higher in a special file. uucp,news.crit /var/log/spooler # Save boot messages also to boot.log local7.* /var/log/boot.log 

Et c'est la configuration pour l'enregistreur Python:

 [handler_syslog] formatter = syslog class = handlers.SysLogHandler args = ('/dev/log',handlers.SysLogHandler.LOG_USER) level = INFO [formatter_syslog] format = %(name)s[%(process)d]: %(levelname)s %(message)s 

Je ne sais pas si j'ai fourni suffisamment d'informations sur ma question, et c'est la première fois que j'ai posté sur serverfault, donc mes excuses pour toute violation de l'label. Merci beaucoup.

One Solution collect form web for “La mise à jour de rsyslog sur Amazon Linux traite soudainement les messages de niveau INFO comme EMERG”

Très probablement, vous rencontrez un bug / limitation de SysLogHandler qui conduit à une nomenclature insérée au mauvais endroit. Cela confond l'parsingur rsyslog et conduit à atsortingbuer le message à la priorité EMERG.

Cela a été "corrigé" dans Python 2.7 en supprimant complètement l'insertion de la nomenclature.

Vous avez deux options:

  1. Mise à niveau vers Python 2.7
  2. Encodez le message dans une str pendant le formatting pour contourner le code d'insertion de la nomenclature. Une façon de le faire est de mettre en œuvre un petit formateur personnalisé comme celui-ci:

     class BOMLessFormatter(logging.Formatter): def format(self, record): return logging.Formatter.format(self, record).encode('utf-8') 
  • rsyslog ne peut pas envoyer de journaux à logstash
  • Ubuntu 14.04.2 LTS - RSysLog 8.8.0 - omusrmsg ne fonctionne pas
  • Enregistrement centralisé sur une connection intermittente
  • Comment puis-je append des valeurs aux données structurées avec rsyslog?
  • Le renvoi de Syslog perd le nom d'hôte original
  • Transférer rsyslog vers syslog-ng, avec FQDN et séparation d'installations
  • Serveur rsyslog - Vous pouvez diviser et organiser des journaux?
  • Rsyslog des journaux en double (rsyslog.conf et rsyslog.d / something.conf)
  • rsyslog: Comment puis-je diriger les messages de toutes les machines distantes vers un seul file?
  • Reporte les journaux d'events Windows vers Rsyslog
  • Le rsyslog activé par TLS peut-il utiliser une list de révocation de certificates?
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de réseau.