python 之logging模块

本文深入探讨了Python中日志系统的实现与配置方法,包括日志等级设置、日志文件输出、日志格式定制及日志处理流程的优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#encoding = UTF-8
import logging
Logname = "alog.txt"
def InitLog():
        logger = logging.getLogger("logger")
        logger.setLevel(logging.DEBUG)

        fhdlr = logging.FileHandler(Logname)
        fhdlr.setLevel(logging.DEBUG)

        chdlr = logging.StreamHandler()
        chdlr.setLevel(logging.DEBUG)

        formatter = logging.Formatter("%(asctime)s %(level name)s %(message)s")
        fhdlr.setFormatter(formatter)
        chdlr.setFormatter(formatter)

        logger.addHandler(fhdlr)
        logger.addHandler(chdlr)

        return logger

#使用
alog = InitLog()
alog.info("xxxx")
alog.error("xxxx")


formatter格式

%(name)s      Logger的名字

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

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

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

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

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

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

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

%(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      用户输出的消息
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值