Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #39873 > unrolled thread

protect logger from shutdown syslogd

Started byMathias Kőrber <mathias@koerber.org>
First post2013-02-25 13:34 +0800
Last post2013-02-25 13:34 +0800
Articles 1 — 1 participant

Back to article view | Back to comp.lang.python


Contents

  protect logger from shutdown syslogd Mathias Kőrber <mathias@koerber.org> - 2013-02-25 13:34 +0800

#39873 — protect logger from shutdown syslogd

FromMathias Kőrber <mathias@koerber.org>
Date2013-02-25 13:34 +0800
Subjectprotect logger from shutdown syslogd
Message-ID<ap0bedFpdimU1@mid.individual.net>
Hi

I have a script which calls getLogger to set up a logging service.
The standard logger description used both the consoleHandler and the
syslogHandler.

It seems that if syslogd is shut down, getLogger fails, and the script
won't be able to log at all.

is there a way to make it immune against this and automatically continue
the consoleHandler. Sure, we could amend the .ini file
to remove the syslogHandler from the logger definition when this is
known, but on a cron-initiated script this is not feasible.

below is the logger definition:

> [loggers]
> keys=root,mylogger
> 
> [handlers]
> keys=consoleHandler,syslogHandler,rootHandler
> 
> [formatters]
> keys=simpleFormatter,syslogFormatter,rootFormatter
> 
> [logger_root]
> level=NOTSET
> handlers=rootHandler
> 
> [logger_mylogger]
> level=INFO
> handlers=consoleHandler,syslogHandler
> #handlers=syslogHandler
> #handlers=consoleHandler
> qualname=mylogger
> propagate=0
> 
> [handler_rootHandler]
> class=StreamHandler
> level=DEBUG
> formatter=rootFormatter
> args=(sys.stdout,)
> 
> [handler_consoleHandler]
> class=StreamHandler
> level=DEBUG
> formatter=simpleFormatter
> args=(sys.stdout,)
> 
> [handler_syslogHandler]
> class=handlers.SysLogHandler
> formatter=syslogFormatter
> level=INFO
> #args=(('localhost', handlers.SYSLOG_UDP_PORT), handlers.SysLogHandler.LOG_USER)
> args=('/dev/log', handlers.SysLogHandler.LOG_USER)


thanks

[toc] | [standalone]


Back to top | Article view | comp.lang.python


csiph-web