python logging文件配置示例

简介: python logging模块用来打印日志,类似于Java的log4j,下面列出logging模块文件配置示例代码 配置文件“logging.

python logging模块用来打印日志,类似于Java的log4j,下面列出logging模块文件配置示例代码
配置文件“logging.conf”

# logging.conf

[loggers] # 打印对象, keys指定不同对象的调用时的名称
keys=root, debug, info, error, file

[logger_root]
level=DEBUG # 指定级别, 错误、调试、信息等
handlers=debughandler, infohandler, errorhandler, filehandler

[logger_debug]
handlers=debughandler
qualname=debug
propagate=0

[logger_info]
handlers=infohandler
qualname=info
propagate=0

[logger_error]
handlers=errorhandler
qualname=error
propagate=0

[logger_file] # 同时输出到文件与控制台的日志对象
handlers=debughandler, filehandler
qualname=debug
propagate=0

###############################################
[handlers] # handler用于指定日志输出位置, 可以使控制台、文件等
keys=debughandler, infohandler, errorhandler, filehandler

[handler_debughandler]
class=StreamHandler
level=DEBUG
formatter=form01
args=(sys.stdout,) # 输出到控制台

[handler_infohandler]
class=StreamHandler
level=INFO
formatter=form01
args=(sys.stdout,)

[handler_errorhandler]
class=FileHandler
level=ERROR
formatter=form02
args=('logging.log', 'a') # 输出到文件,追加模式,每次不重写文件

[handler_filehandler]
class=FileHandler
level=DEBUG
formatter=form02 # 选择输出格式化对象
args=('logging.log', 'w') # 输出到文件,每次重写文件

###############################################
[formatters] # 指定输出格式,可以设置多种格式,每种输出位置选定不同输出格式
keys=form01, form02

[formatter_form01] # 格式: 时间 文件名 代码行数 输出级别 - 输出信息
format=%(asctime)s %(filename)s [line:%(lineno)d] %(levelname)s - %(message)s
datefmt=%Y-%m-%d %H:%M:%S

[formatter_form02]
format=%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s - %(message)s
datefmt=%Y-%m-%d %H:%M:%S

上述“logging.conf”文件与代码文件处于同级目录

示例代码

#! /usr/bin/env python
# -*- coding: utf-8 -*-

"""
@time: 2017/5/12 9:52
@description: TODO
"""

import logging
from logging.config import fileConfig

fileConfig('logging.conf')
logger = logging.getLogger('file') # 同时输出到文件与控制台
# logger = logging.getLogger('debug') # 输出到控制台

logger.debug('test')
目录
相关文章
|
24天前
|
安全 网络安全 数据安全/隐私保护
|
9天前
|
JSON Shell Linux
配置Python的环境变量可
配置Python的环境变量
26 4
|
1月前
|
安全 Linux 数据安全/隐私保护
python知识点100篇系列(15)-加密python源代码为pyd文件
【10月更文挑战第5天】为了保护Python源码不被查看,可将其编译成二进制文件(Windows下为.pyd,Linux下为.so)。以Python3.8为例,通过Cython工具,先写好Python代码并加入`# cython: language_level=3`指令,安装easycython库后,使用`easycython *.py`命令编译源文件,最终生成.pyd文件供直接导入使用。
python知识点100篇系列(15)-加密python源代码为pyd文件
|
17天前
|
开发者 Python
Python中__init__.py文件的作用
`__init__.py`文件在Python包管理中扮演着重要角色,通过标识目录为包、初始化包、控制导入行为、支持递归包结构以及定义包的命名空间,`__init__.py`文件为组织和管理Python代码提供了强大支持。理解并正确使用 `__init__.py`文件,可以帮助开发者更好地组织代码,提高代码的可维护性和可读性。
17 2
|
20天前
|
数据挖掘 Python
Python示例,展示如何找到最近一次死叉之后尚未形成金叉的位置
金融分析中,“死叉”指短期移动平均线(如MA5)跌破长期移动平均线(如MA10),而“金叉”则相反。本文提供Python代码示例,用于找出最近一次死叉后未形成金叉的位置,涵盖移动平均线计算、交叉点判断及结果输出等步骤,适合金融数据分析。
22 1
|
1月前
|
Java Python
> python知识点100篇系列(19)-使用python下载文件的几种方式
【10月更文挑战第7天】本文介绍了使用Python下载文件的五种方法,包括使用requests、wget、线程池、urllib3和asyncio模块。每种方法适用于不同的场景,如单文件下载、多文件并发下载等,提供了丰富的选择。
|
1月前
|
数据安全/隐私保护 流计算 开发者
python知识点100篇系列(18)-解析m3u8文件的下载视频
【10月更文挑战第6天】m3u8是苹果公司推出的一种视频播放标准,采用UTF-8编码,主要用于记录视频的网络地址。HLS(Http Live Streaming)是苹果公司提出的一种基于HTTP的流媒体传输协议,通过m3u8索引文件按序访问ts文件,实现音视频播放。本文介绍了如何通过浏览器找到m3u8文件,解析m3u8文件获取ts文件地址,下载ts文件并解密(如有必要),最后使用ffmpeg合并ts文件为mp4文件。
|
1月前
|
IDE 网络安全 开发工具
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
本文介绍了如何在PyCharm专业版中连接远程服务器并配置远程Python环境解释器,以便在服务器上运行代码。
319 0
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
|
1月前
|
Linux Android开发 开发者
【Python】GUI:Kivy库环境安装与示例
这篇文章介绍了 Kivy 库的安装与使用示例。Kivy 是一个开源的 Python 库,支持多平台开发,适用于多点触控应用。文章详细说明了 Kivy 的主要特点、环境安装方法,并提供了两个示例:一个简单的 Hello World 应用和一个 BMI 计算器界面。
56 0
|
2月前
|
开发者 Python
30天拿下Python之logging模块
30天拿下Python之logging模块
16 0