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')
目录
相关文章
|
13天前
|
Python
【python】python跨文件使用全局变量
【python】python跨文件使用全局变量
|
22天前
|
监控 数据处理 索引
使用Python批量实现文件夹下所有Excel文件的第二张表合并
使用Python和pandas批量合并文件夹中所有Excel文件的第二张表,通过os库遍历文件,pandas的read_excel读取表,concat函数合并数据。主要步骤包括:1) 遍历获取Excel文件,2) 读取第二张表,3) 合并所有表格,最后将结果保存为新的Excel文件。注意文件路径、表格结构一致性及异常处理。可扩展为动态指定合并表、优化性能、日志记录等功能。适合数据处理初学者提升自动化处理技能。
20 1
|
26天前
|
安全 编译器 开发者
Python语言的配置解释器
Python语言的配置解释器
|
27天前
|
存储 并行计算 Java
Python读取.nc文件的方法与技术详解
本文介绍了Python中读取.nc(NetCDF)文件的两种方法:使用netCDF4和xarray库。netCDF4库通过`Dataset`函数打开文件,`variables`属性获取变量,再通过字典键读取数据。xarray库利用`open_dataset`打开文件,直接通过变量名访问数据。文中还涉及性能优化,如分块读取、使用Dask进行并行计算以及仅加载所需变量。注意文件路径、变量命名和数据类型,读取后记得关闭文件(netCDF4需显式关闭)。随着科学数据的增长,掌握高效处理.nc文件的技能至关重要。
94 0
|
29天前
|
存储 Python
Python中如何读取和写入文件?请提供代码示例。
【2月更文挑战第26天】【2月更文挑战第87篇】Python中如何读取和写入文件?请提供代码示例。
|
1月前
|
Python
Python中的继承:概念、用法与示例
Python中的继承:概念、用法与示例
22 0
|
29天前
|
Python
python中文件和异常处理方法(二)
python中文件和异常处理方法(二)
13 0
|
29天前
|
Python
python中文件和异常处理方法(一)
python中文件和异常处理方法(一)
28 0
|
30天前
|
算法 索引 Python
Python中如何实现二分查找?请提供代码示例。
Python中如何实现二分查找?请提供代码示例。
22 0
|
29天前
|
Python
python中文件和异常处理方法(三)
python中文件和异常处理方法(三)
18 0