python日志_python 日志模块
之前项目中用的是工具组做的日志模块,用的久了,脑袋里就懒得思考这是如何实现的。毕竟菊厂的开发,忙成狗,不是我所负责的自然只是看看会用就行了。最近开始奋发图强,自然要好好看下基础的东西。
以前做java开发时候知道java有个log4j的日志模块,用着还不错。我在python中找到它有自己的日志模块logging,另外搜索log4python,发现简书上有人对这个评价一般,有贴出来代码和配置,所以主要还是先看python自带的。
importlogging.handlers
LOG_FORMAT= "%(asctime)s - [%(levelname)s] - %(message)s"
#logging.basicConfig(filename="test.log", level=logging.DEBUG, format=LOG_FORMAT)
my_logger = logging.getLogger("my_loger")
my_logger.setLevel(logging.DEBUG)
console_handler=logging.StreamHandler()
log_format=logging.Formatter(LOG_FORMAT)
console_handler.setFormatter(log_format)
file_handler= logging.FileHandler("my_test.log",encoding="utf-8")
my_logger.addHandler(console_handler)
my_logger.addHandler(file_handler)if __name__ == "__main__":
my_logger.debug("this is debug log")
my_logger.info("this is info log")
通过自带的logging模块来看,日志可以通过不同的handler同时打印到控制台和文件,而且各自用各自自己的日志格式,所以,是可以满足日常开发使用的。
在使用时候,可以通过logging.basicConfig来全局配置,后续用logging.debug()这种语句来打印日志;也可以用logging.getLogger实例化一个日志对象,添加不同的handler,后面再用logging实例化出来的对应打印。
在控制台打印上,可以用StreamHandler类,默认打印到std.err; 打印到文件中,可以用FileHandler,或者更实用的RotatingFileHandler,按照官方文档所说,RotatingFileHandler在日志文件达到了指定大小之后可以分割文件。
python日志_python 日志模块相关推荐
- python处理日志_python日志处理(logging模块)
文章非原创,搬运自@云游道士博客: 另外,这篇文章可以作为参考: 本节内容 日志相关概念 logging模块简介 使用logging提供的模块级别的函数记录日志 logging模块日志流处理流程 使用 ...
- python日志_python日志处理
一.日志概念 日志是一种可以追踪某些软件运行时所发生事件的方法. 软件开发人员可以向他们的代码中 调用日志记录相关的方法来表明发生了某些事情. 一个事件可以用一个可包含可选变量数据 的消息来描述. 此 ...
- python电话模块_Python常用模块
1.os模块 os模块包装了不同操作系统的通用接口,使用户在不同操作系统下,可以使用相同的函数接口,返回相同结构的结果. os.name:返回当前操作系统名称('posix', 'nt', 'os2' ...
- python连接linux获取日志_Python 日志记录模块logging的使用
shell当中记录log,满眼花花的重定向符合,看着很不爽有没有!我喜欢Python,就是喜欢这种买个手电筒,备用电池都准备好了的感觉.logging模块很简单,导入模块,定义日志格式.代码中就可以通 ...
- python多线程怎么写日志_Python日志记录在多进程下的使用
1. 问题描述 项目中,使用RotatingFileHandler根据日志文件大小来切分日志.设置文件的MaxBytes为1GB, backupCount大小为5. 经查看,发现日志文件的大小均小于1 ...
- python报错输出到日志_Python 日志配置总结
日志是程序调试的利器,通过日志来解析获取数据,线上问题通过日志分析和定位等,用途多种多样.Python 作为当前常用的一门开发语言,国内很多开发者对其的使用极其粗糙,写法较为随意,受开发者本身熟悉的语 ...
- python报错输出到日志_Python日志记录和子进程输出和错误流
基于Adam Rosenfield's code,你可以 >使用select.select来阻止,直到有要读取的输出 proc.stdout或proc.stderr, >然后读取并记录该输 ...
- python 程序停止打印日志_Python日志打印
简单示例 import sys import ctypes import logging import logging.handlers reload(sys) sys.setdefaultencod ...
- cpickle支持的python版本_Python cPickle模块(转)
持久性就是指保持对象,甚至在多次执行同一程序之间也保持对象.通过本文,您会对 Python对象的各种持久性机制(从关系数据库到 Python 的 pickle以及其它机制)有一个总体认识.另外,还会让 ...
最新文章
- bazel源码编译Tensorflow
- Hive Lateral View、视图、索引
- adb devices 找不到设备的解决方法
- 一文教你分清持续集成,持续交付,持续部署!
- 【已解决】iView-admin Editor 组件 绑定默认值问题
- 141.环形链表(力扣leetcode)博主可答疑该问题
- win10 uwp 渲染原理 DirectComposition 渲染
- Hello软件项目相关功能测试点
- 通知:大数据技术架构知识库公开
- CSS之颜色和背景的属性设置
- Python爬虫实战:爬取拉勾网并对其进行数据分析
- Linux .swp文件恢复
- 【自制小工具】快速批量查询IP归属地(自动去重、按国内外汇总,并智能识别出错误IP)
- 使用java实现路由协议_如果使用OSPF作为路由协议,那么( )【选两项】
- SpringBoot 整合Flyway 常见问题【科普解决】
- 树冠点云投影面积计算(凸包法)
- 年入100万是个梦,有3座大山需要翻越
- Android高中低端机整理,高中低端都有 各品牌新上市安卓机汇总
- html手机和电脑端网页效果相同,关于手机网页和电脑网页相同内容会不会重复收录的问题...
- Python 3 Keras YOLO v3解析与实现
热门文章
- 英语学习笔记2019-12-06
- 安卓案例:在同一Activity里切换Fragment
- 织梦charset.func.php,织梦程序百度php主动推送代码,亲测可用!
- 定量库存控制模型_经济订货批量不是最终的订货批量,计算订货批量的最高库存定量法...
- e300氛围灯哪里调节_黑色的奔驰E300有了亚光膜的加持 一出场就惊艳四座
- 利用计算机打字教学设计,第6课 争当打字小能手教学设计
- 【Level 08】U07 Mixed Feelings L2 Let's go shopping
- 【英语学习】【Daily English】U10 Education L02 I'm not a pushy parent
- Intel Sandy Bridge/Ivy Bridge架构/微架构/流水线 (14) - 读存操作写存操作
- struts2漏洞_Apache Struts2057远程代码执行漏洞复现