返回顶部
首页 > 资讯 > 后端开发 > Python >python实现自定义日志的具体方法
  • 632
分享到

python实现自定义日志的具体方法

python自定义日志 2022-06-02 22:06:53 632人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

1、导入logging模块: import logging 2、创建日志收集器: logger = logging.getLogger(“日志收集器的name”) 3、设置日志收集器的日志级别: lo

1、导入logging模块:


import logging

2、创建日志收集器:


logger = logging.getLogger(“日志收集器的name”)

3、设置日志收集器的日志级别:


logger.setLevel(logging.INFO) #设置收集器的级别为INFO。

4、给日志收集器创建输出渠道,根据第一部分的内容知:日志输出渠道包含控制台输出和文件输出。

5、设置日志输出的内容格式。


# 设置日志的输出格式
 
fmt = "%(asctime)s %(name)s %(levelname)s %(filename)s-%(lineno)d:%(message)s"
 
fORMatter = logging.Formatter(fmt)

6、将设置的日志格式绑定到创建的输出渠道中,即将日志格式与输出渠道关联起来。

7、将设置好的输出渠道,添加到日志收集器。

实例扩展:


import os
import time
import logging

#返回一个logger实例,如果没有指定name,返回root logger。
# 只要name相同,返回的logger实例都是同一个而且只有一个,即name和logger实例是一一对应的。
# 这意味着,无需把logger实例在各个模块中传递。只要知道name,就能得到同一个logger实例。
logger = logging.getLogger('mylogger')
# 设置总日志级别, 也可以给不同的handler设置不同的日志级别
#设置logger的level, level有以下几个级别:
# 级别高低顺序:NOTSET < DEBUG < INFO < WARNING < ERROR < CRITICAL
# 如果把looger的级别设置为INFO, 那么小于INFO级别的日志都不输出, 大于等于INFO级别的日志都输出 
logger.setLevel(logging.DEBUG)

# 控制台日志和日志文件使用同一个formatter,formatter用于描述日志的格式
formatter = logging.Formatter(
	'%(asctime)s - %(filename)s[line:%(lineno)d] - <%(threadName)s %(thread)d>' +
	'- <Process %(process)d> - %(levelname)s: %(message)s'
)
# asctime:日志产生的时间;filename:产生日志的脚本文件名;lineno:该脚本文件哪一行代码产生了日志
# threadName: 当前线程名;thread: 当前进程名;Process进程同thread线程
# levelname: logger的级别;meesage: 具体的日志信息


# 创建Handler, 输出日志到控制台和文件
# 日志文件FileHandler
basedir = os.path.abspath(".") #返回脚本所在的绝对路径
log_dir = os.path.join(basedir, 'logs')  # 日志文件所在目录,即‘脚本路径/logs'
if not os.path.isdir(log_dir):
	os.mkdir(log_dir)
filename = time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime(time.time())) + '.log'  # 日志文件名,以当前时间命名
file_handler = logging.FileHandler(os.path.join(log_dir, filename))  # 创建日志文件handler
file_handler.setFormatter(formatter)  # 设置Formatter
file_handler.setLevel(logging.INFO)  # 单独设置日志文件的日志级别

# 控制台日志StreamHandler
stream_handler = logging.StreamHandler()
stream_handler.setFormatter(formatter)
# stream_handler.setLevel(logging.INFO)  # 单独设置控制台日志的日志级别,注释掉则使用总日志级别

# 将handler添加到logger中

logger.addHandler(file_handler)
logger.addHandler(stream_handler)

到此这篇关于python实现自定义日志的具体方法的文章就介绍到这了,更多相关Python自定义日志如何实现内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python实现自定义日志的具体方法

本文链接: https://lsjlt.com/news/10801.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python实现自定义日志的具体方法
    1、导入logging模块: import logging 2、创建日志收集器: logger = logging.getLogger(“日志收集器的name”) 3、设置日志收集器的日志级别: lo...
    99+
    2022-06-02
    python 自定义日志
  • python自定义日志怎么实现
    这篇文章主要介绍了python自定义日志怎么实现,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、导入logging模块:import logging2、创建日志收...
    99+
    2023-06-15
  • JMeter自定义日志与日志分析的实现
    目录1 JMeter日志概览2 JMeter自定义日志3 JMeter日志分析1 JMeter日志概览 JMeter与Java程序一样,会记录事件日志,日志文件保存在bin目录中,名...
    99+
    2024-04-02
  • python迭代器自定义类的具体方法
    1、说明 迭代器还具有迭代用户定制类别的能力。迭代对象需要支持两种方式:_iter__()和next(),前者返回迭代本身,后者返回下一个元素。 2、实例 class examp...
    99+
    2024-04-02
  • springboot自定义日志注解的实现
    前言       在之前的日志记录的写法中,我们大多是写一个工具类,在这个类里面定义日志保存的方法,然后再controller中执行请求的时候调用即可,...
    99+
    2024-04-02
  • 如何实现JMeter自定义日志与日志分析
    这篇文章主要介绍如何实现JMeter自定义日志与日志分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1 JMeter日志概览JMeter与Java程序一样,会记录事件日志,日志文件保存在bin目录中,名称为jmet...
    99+
    2023-06-22
  • Android APP使用自定义字体实现方法
    android系统内置字体 android 系统本身内置了一些字体,可以在程序中使用,并且支持在xml配置textView的时候进行修改字体的样式。支持字段为android:t...
    99+
    2022-06-06
    自定义 方法 字体 app Android
  • java实现自定义日期选择器的方法实例
    前言本文主要介绍的是利用java swing写的一个日期选择器.,Swing 是一个为Java设计的GUI工具包,Swing是JAVA基础类的一部分,Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表,下面话不多说了,...
    99+
    2023-05-31
    java 自定义 日期选择器
  • 使用Navicat查看MySQL日志的具体方法
    下文主要给大家带来使用Navicat查看MySQL日志的具体方法,希望这些内容能够带给大家实际用处,这也是我编辑使用Navicat查看MySQL日志的具体方法这篇文章的主要目的。好了,废话不多说,大家直接看...
    99+
    2024-04-02
  • Android实现自定义日历
    自定义日历控件,支持旧历、节气、日期标注、点击操作 (参考网络上的日历控件改写) 注:将下面的四张资源图片拷贝到所建包的下一个image目录中,如Calendar.java 所...
    99+
    2022-06-06
    自定义 Android
  • 解析Android中使用自定义字体的实现方法
    1、Android系统默认支持三种字体,分别为:“sans”, “serif”, “monospace 2、在Android中可以引入其他字体 。 代码如下:<xml ...
    99+
    2022-06-06
    自定义 方法 字体 Android
  • .Net core Blazor怎么自定义日志提供器实现实时日志查看器
    本文小编为大家详细介绍“.Net core Blazor怎么自定义日志提供器实现实时日志查看器”,内容详细,步骤清晰,细节处理妥当,希望这篇“.Net core Blazor怎么自定义日志提供器实现实...
    99+
    2023-07-04
  • Android中自定义加载样式图片的具体实现
    先让大家看看效果图吧,相信很多Android初学者都想知道这中效果是怎么实现的,来上图: 想实现上面这张图中的自定义加载样式,其实很简单,首先我们需要的布局组件有Process...
    99+
    2022-06-06
    自定义 图片 Android
  • Android自定义ViewGroup的实现方法
         在android中提供了常见的几种ViewGroup的实现,包括LinearLayout、Relativeayout、Fram...
    99+
    2022-06-06
    方法 Android
  • springboot使用自定义注解实现aop切面日志
    平时我们在开发过程中,代码出现bug时为了更好的在服务器日志中寻找问题根源,会在接口的首尾打印日志,看下参数和返回值是否有问题。但是手动的logger.info() 去编写时工作量较...
    99+
    2024-04-02
  • Nginx日志配置具体方法是什么
    小编今天带大家了解Nginx日志配置具体方法是什么,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“Nginx日志配置具体方法是什么”的...
    99+
    2023-06-28
  • PyCharm怎样设置自定义字体_PyCharm设置自定义字体的方法
    首先,我们pycharm软件中找到他的自定义字体。 然后,我们可以爸这个命令进行打开。 此时,我们就能在这里设置他的字体。 于是,我们可以在这里下拉选择字体。 那么,我们还能设置...
    99+
    2024-05-10
    pycharm
  • android实现自动关机的具体方法
    [java]  代码如下:private void shutdown() {        &...
    99+
    2022-06-06
    自动 自动关机 方法 Android
  • 怎么在Python自定义日志输出格式
    今天就跟大家聊聊有关怎么在Python自定义日志输出格式,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。python有哪些常用库python常用的库:1.requesuts;2.scr...
    99+
    2023-06-14
  • Android自定义Style实现方法
    styles.xml如下: [html] 代码如下:<resources xmlns:android="http://schemas.android.com/apk/r...
    99+
    2022-06-06
    方法 Android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作