Python通过配置文件控制日志打印

本文介绍了如何将Java中的日志框架如log4j和logback的配置迁移到Python中,包括使用yaml格式的log.yaml文件、定义formatters、handlers和loggers,以及提供了一个测试代码示例和注意事项。

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

引言:

作为一个Java程序员,我们使用过log4j,logback等一系列的日志打印框架,还有比较简单的@Slf4j,只需要一个annotation,就可以很简单的输出日志了,并且日志文件可以按天或者按大小进行滚动,那么在Python里面该如何做呢?其实Java里面的日志配置可以非常平滑的迁移到Python里面来。

日志配置文件:

1、log.yaml

配置文件的格式有非常多的形式,比如.ini格式,.yaml格式,.json格式,.yaml比较好理解,我们就拿这个格式来举例,文件内容如下所示:

version: 1
formatters:
  simple:
    format: '%(asctime)s - %(funcName)s - %(lineno)d - %(levelname)s - %(message)s'

handlers:
  console:
    class: logging.StreamHandler
    level: DEBUG
    formatter: simple
  file:
    class: logging.handlers.TimedRotatingFileHandler
    filename: ./log/logging.log
    when: D
    interval: 1
    backupCount: 5
    level: DEBUG
    formatter: simple

loggers:
  bizLog:
    level: DEBUG
    handlers: [file]
    propagate: no
root:
  level: DEBUG
  handlers: [console]

2、formatters

首先定义一个formatter,它决定了日志输出的格式,有很多的预置变量,下表个大家列出来了,可以根据自己的需要进行增减:

Attribute name

Format

Description

args

You shouldn’t need to format this yourself.

The tuple of arguments merged into msg to produce message, or a dict whose values are used for the merge (when there is onl

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值