[Yum-devel] [PATCH] Fix syslog_indent and syslog_facility settings, improve syslog format.
Ville Skyttä
ville.skytta at iki.fi
Wed Mar 24 16:33:52 UTC 2010
---
yum/logginglevels.py | 59 ++++++++++++++++++++++---------------------------
1 files changed, 27 insertions(+), 32 deletions(-)
diff --git a/yum/logginglevels.py b/yum/logginglevels.py
index 3d82b55..1de8ef0 100644
--- a/yum/logginglevels.py
+++ b/yum/logginglevels.py
@@ -45,28 +45,27 @@ logging.addLevelName(DEBUG_4, "DEBUG_4")
__NO_LOGGING = 100
logging.raiseExceptions = False
-import syslog as syslog_module
-
syslog = None
-# Mostly borrowed from original yum-updated.py
-_syslog_facility_map = { "KERN" : syslog_module.LOG_KERN,
- "USER" : syslog_module.LOG_USER,
- "MAIL" : syslog_module.LOG_MAIL,
- "DAEMON" : syslog_module.LOG_DAEMON,
- "AUTH" : syslog_module.LOG_AUTH,
- "LPR" : syslog_module.LOG_LPR,
- "NEWS" : syslog_module.LOG_NEWS,
- "UUCP" : syslog_module.LOG_UUCP,
- "CRON" : syslog_module.LOG_CRON,
- "LOCAL0" : syslog_module.LOG_LOCAL0,
- "LOCAL1" : syslog_module.LOG_LOCAL1,
- "LOCAL2" : syslog_module.LOG_LOCAL2,
- "LOCAL3" : syslog_module.LOG_LOCAL3,
- "LOCAL4" : syslog_module.LOG_LOCAL4,
- "LOCAL5" : syslog_module.LOG_LOCAL5,
- "LOCAL6" : syslog_module.LOG_LOCAL6,
- "LOCAL7" : syslog_module.LOG_LOCAL7,}
+# Mostly borrowed from original yum-updatesd.py
+_syslog_facility_map = { "KERN" : logging.handlers.SysLogHandler.LOG_KERN,
+ "USER" : logging.handlers.SysLogHandler.LOG_USER,
+ "MAIL" : logging.handlers.SysLogHandler.LOG_MAIL,
+ "DAEMON" : logging.handlers.SysLogHandler.LOG_DAEMON,
+ "AUTH" : logging.handlers.SysLogHandler.LOG_AUTH,
+ "LPR" : logging.handlers.SysLogHandler.LOG_LPR,
+ "NEWS" : logging.handlers.SysLogHandler.LOG_NEWS,
+ "UUCP" : logging.handlers.SysLogHandler.LOG_UUCP,
+ "CRON" : logging.handlers.SysLogHandler.LOG_CRON,
+ "LOCAL0" : logging.handlers.SysLogHandler.LOG_LOCAL0,
+ "LOCAL1" : logging.handlers.SysLogHandler.LOG_LOCAL1,
+ "LOCAL2" : logging.handlers.SysLogHandler.LOG_LOCAL2,
+ "LOCAL3" : logging.handlers.SysLogHandler.LOG_LOCAL3,
+ "LOCAL4" : logging.handlers.SysLogHandler.LOG_LOCAL4,
+ "LOCAL5" : logging.handlers.SysLogHandler.LOG_LOCAL5,
+ "LOCAL6" : logging.handlers.SysLogHandler.LOG_LOCAL6,
+ "LOCAL7" : logging.handlers.SysLogHandler.LOG_LOCAL7,
+ }
def syslogFacilityMap(facility):
if type(facility) == int:
return facility
@@ -75,7 +74,7 @@ def syslogFacilityMap(facility):
elif (facility.upper().startswith("LOG_") and
facility[4:].upper() in _syslog_facility_map):
return _syslog_facility_map[facility[4:].upper()]
- return syslog_module.LOG_USER
+ return _syslog_facility_map["USER"]
def logLevelFromErrorLevel(error_level):
""" Convert an old-style error logging level to the new style. """
@@ -140,7 +139,6 @@ def doLoggingSetup(debuglevel, errorlevel,
return
plainformatter = logging.Formatter("%(message)s")
- syslogformatter = logging.Formatter("yum: %(message)s")
console_stdout = logging.StreamHandler(sys.stdout)
console_stdout.setFormatter(plainformatter)
@@ -158,20 +156,17 @@ def doLoggingSetup(debuglevel, errorlevel,
filelogger.setLevel(logging.INFO)
filelogger.propagate = False
- log_dev = syslog_device
global syslog
- if os.path.exists(log_dev):
+ if os.path.exists(syslog_device):
try:
- syslog = logging.handlers.SysLogHandler(log_dev)
- syslog.setFormatter(syslogformatter)
- filelogger.addHandler(syslog)
- if syslog_ident is not None or syslog_facility is not None:
- ident = syslog_ident or ''
- facil = syslog_facility or 'LOG_USER'
- syslog_module.openlog(ident, 0, syslogFacilityMap(facil))
+ facil = syslogFacilityMap(syslog_facility or "USER")
+ syslog = logging.handlers.SysLogHandler(syslog_device, facil)
except socket.error:
if syslog is not None:
syslog.close()
+ else:
+ setLoggingApp(syslog_ident or "yum")
+ filelogger.addHandler(syslog)
_added_handlers = True
if debuglevel is not None:
@@ -201,5 +196,5 @@ def setFileLog(uid, logfile):
def setLoggingApp(app):
if syslog:
- syslogformatter = logging.Formatter("yum(%s): "% (app,) + "%(message)s")
+ syslogformatter = logging.Formatter(app + "[%(process)d]: %(message)s")
syslog.setFormatter(syslogformatter)
--
1.7.0.1
More information about the Yum-devel
mailing list