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