日志、异常、上下文

多文件日志
import logging
class Logger:
    def __init__(self, logName, logFile):
        self._logger = logging.getLogger(logName)
        handler = logging.FileHandler(logFile,mode='w')
        formatter = logging.Formatter('%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',datefmt='%a, %d %b %Y %H:%M:%S')
        handler.setFormatter(formatter)
        self._logger.addHandler(handler)
        self._logger.setLevel(logging.INFO)

    def log(self, msg):
        if self._logger is not None:
            self._logger.info(msg)


if __name__ == "__main__":
    log1 = Logger("log1", "log1.log")
    log1.log("hello")
    log2 = Logger("log2", "log2.log")
    log2.log("world")
import datetime
import traceback
import logging

logger=logging
logger.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
                    datefmt='%a, %d %b %Y %H:%M:%S',
                    filename='meituan.log',
                    filemode='w')

logger.debug('This is debug message')
logger.info('This is info message')
logger.warning('This is warning message')


class Test(object):

    def __init__(self):
        print('init')

    def __enter__(self):
        print('enter')
        return self

    def __exit__(self, exc_type, exc_val, exc_tb):
        logger.error(traceback.format_exc())
        print(str(exc_type),str(exc_val),str(exc_tb))
        print('exit')

    def fun(self):
        a=10/0
        print('fun')


if __name__ == '__main__':
    with Test() as test:
        test.fun()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值