Python logger /logging

# !/user/bin/python
# -*- coding: utf-8 -*-
'''
subprocess : 需要在linux平台上测试 shell
logging
'''

import logging
# 将日志输出在文件里
# logging.basicConfig(filename="app.log", level=logging.DEBUG)
logging.basicConfig(filename="app.log",
                    level=logging.WARNING,
                    format='%(asctime)s %(levelname)s  %(filename)s:%(lineno)d  - %(message)s',
                    datefmt='%m/%d/%Y %I:%M:%S %p')  # 在日志上加上时间. %p代表pm.  TODO 为什么没打出行数?
logging.debug("test debug")
logging.info("test info")
logging.error("test error")
logging.warning("User [alex] attempted wrong password more than 3 times")


# 同时将日志打印在屏幕上并输出在文件里
# step 1, create logger
logger = logging.getLogger("TEST-LOG")
logger.setLevel(logging.DEBUG)

# step2, create console handler and set level to debug
ch=logging.StreamHandler()
ch.setLevel(logging.DEBUG)

# step3, create file handler and set level to warning
fh = logging.FileHandler("process.log")
fh.setLevel(logging.ERROR)

# step3, define format
fh_formatter = logging.Formatter('%(asctime)s %(levelname)s  %(filename)s:%(lineno)d  - %(message)s')
ch_formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

fh.setFormatter(fh_formatter)
ch.setFormatter(ch_formatter)

# step4, connect handlers to logger
logger.addHandler(fh)
logger.addHandler(ch)

logger.warning("ddddd")

猜你喜欢

转载自www.cnblogs.com/cheese320/p/9061275.html