码迷,mamicode.com
首页 > 编程语言 > 详细

python学习-57 logging模块

时间:2019-08-23 13:40:44      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:代码   sage   span   dna   logger   return   bsp   form   handler   

logging

 

1.basicConfig方式

import logging

# 以下是日志的级别
logging.debug(debug message)
logging.info(info message)
logging.warning(warning msg)
logging.error(error msg)
logging.critical(critical msg)

 

设置级别:

logging.basicConfig(level=logging.DEBUG)

 

如果想要存到文件里:

logging.basicConfig(level=logging.DEBUG,filename=logger.logo)
logging.basicConfig(level=logging.DEBUG,filename=logger.logo,filemode=w)

 

时间和行号

format=‘%(asctime)s %(lineno)d %(message)s‘

 

运行之后文件里这样显示的

2019-08-23 10:15:44,510 11 debug message
2019-08-23 10:15:44,511 12 info message
2019-08-23 10:15:44,511 13 warning msg
2019-08-23 10:15:44,512 14 error msg
2019-08-23 10:15:44,513 15 critical msg

 

 

2.format参数中可能用到的格式化串:

--- %(name)s        Logger的名字

---%(levelno)s     数字形式的日志级别

---%(levelname)s     文本形式的日志级别

---%(pathname)s       调用日志输出函数的模块的完整路径名,可能没有

---%(filename)s          调用日志输出函数的模块的文件名

---%(module)s  调用日志输出函数的模块名

---%(funcName)s   调用日志输出函数的函数名

---%(lineno)s  调用函数日志输出函数的语句所在的代码行

---%(created)f  当前时间,用UNIX标准的表示时间的浮点数表示

---%(relativeCreated)d  输出日志信息时的,自logger创建以来的毫秒数

---%(asctime)s  字符串形式的当前时间,默认格式是“2003-07-08 16:49:45,896”  逗号后面是毫秒

---%(thread)d  线程ID。可能没有

---%(threadName)s  线程名。可能没有

---%(process)d  进程ID。 可能没有

---%(message)s  用户输出的信息

 

 

3.logger对象

import logging

logger = logging.getLogger()           # 创建对象


f = logging.FileHandler(test_log)           # 向文件里发送内容
screen = logging.StreamHandler()     # 向屏幕发送内容

ff = logging.Formatter(%(asctime)s %(message)s)

f.setFormatter(ff)
screen.setFormatter(ff)

logger.addHandler(f)
logger.addHandler(screen)

logger.setLevel(DEBUG)


logger.debug(debug)
logger.info(info)
logger.warning(warning)
logger.error(error)
logger.critical(critical)

运行结果屏幕上也显示,也能存到文件里

 

 

改为函数的形式:

import logging
def logger():
    logger = logging.getLogger()           # 创建对象


    f = logging.FileHandler(test_log)           # 向文件里发送内容
    screen = logging.StreamHandler()     # 向屏幕发送内容

    ff = logging.Formatter(%(asctime)s %(message)s)

    f.setFormatter(ff)
    screen.setFormatter(ff)

    logger.addHandler(f)
    logger.addHandler(screen)

    logger.setLevel(DEBUG)
    return logger

logger = logger()
logger.debug(debug)
logger.info(info)
logger.warning(warning)
logger.error(error)
logger.critical(critical)

 

python学习-57 logging模块

标签:代码   sage   span   dna   logger   return   bsp   form   handler   

原文地址:https://www.cnblogs.com/liujinjing521/p/11399160.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!