Skip to content

Instantly share code, notes, and snippets.

@guixing
Last active December 23, 2015 01:19
Show Gist options
  • Save guixing/6559651 to your computer and use it in GitHub Desktop.
Save guixing/6559651 to your computer and use it in GitHub Desktop.
import logging
from logging.handlers import *
import sys
class errorLogFilter(logging.Filter):
def filter(self,record):
if record.msg.startswith('error'):
return True
return False
logger = logging.getLogger(name='error')
logger.setLevel(logging.NOTSET)
f = errorLogFilter()
handle = logging.FileHandler('/tmp/aaa.log')
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
handle.setLevel(logging.ERROR)
handle.setFormatter(formatter)
handle.addFilter(f)
debug_handler = logging.StreamHandler()
debug_handler.setLevel(logging.DEBUG)
debug_handler.setFormatter(formatter)
logger.addHandler(handle)
if sys.argv[1] == 'debug':
logger.setLevel(logging.DEBUG)
logger.addHandler(debug_handler)
logger.error('I am a error log')
logger.debug('I am a debug log')
logger.error('error, this will be log')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment