Python logger /logging
2018-05-19 18:50 钱先生 阅读(328) 评论(0) 编辑 收藏 举报# !/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")
Level | When it’s used |
---|---|
DEBUG |
Detailed information, typically of interest only when diagnosing problems. |
INFO |
Confirmation that things are working as expected. |
WARNING |
An indication that something unexpected happened, or indicative of some problem in the near future (e.g. ‘disk space low’). The software is still working as expected. |
ERROR |
Due to a more serious problem, the software has not been able to perform some function. |
CRITICAL |
A serious error, indicating that the program itself may be unable to continue running. |