This sample script sends some messages to syslog and others to a different logfile based upon their priority.
#!/usr/bin/python3
# Import the Standard Library modules we need
import logging
import logging.handlers
def set_up_logging():
# File handler for /var/log/some.log
serverlog = logging.FileHandler('/var/log/some.log')
serverlog.setLevel(logging.DEBUG)
serverlog.setFormatter(logging.Formatter(
'%(asctime)s %(pathname)s [%(process)d]: %(levelname)s %(message)s'))
# Syslog handler
syslog = logging.handlers.SysLogHandler(address='/dev/log')
syslog.setLevel(logging.WARNING)
syslog.setFormatter(logging.Formatter(
'%(pathname)s [%(process)d]: %(levelname)s %(message)s'))
# Combined logger used elsewhere in the script
logger = logging.getLogger('wbs-server-log')
logger.setLevel(logging.DEBUG)
logger.addHandler(serverlog)
logger.addHandler(syslog)
return logger
logger = set_up_logging()
logger.debug('This message should go to the log file')
logger.info('So should this')
logger.warning('And this, too')
No comments:
Post a Comment