python logging日志模块原理及操作解析

 更新时间:2019年10月12日 09:45:03   作者:梦想一步登天  
这篇文章主要介绍了python logging日志模块原理及操作解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一、基本介绍

logging 模块是python自带的一个包,因此在使用的时候,不必安装,只需要import即可。

logging有 5 个不同层次的日志级别,可以将给定的 logger 配置为这些级别:

  •     DEBUG:详细信息,用于诊断问题。Value=10。
  •     INFO:确认代码运行正常。Value=20。
  •     WARNING:意想不到的事情发生了,或预示着某个问题。但软件仍按预期运行。Value=30。
  •     ERROR:出现更严重的问题,软件无法执行某些功能。Value=40。
  •     CRITICAL:严重错误,程序本身可能无法继续运行。Value=50。

二、基本操作

主要调用logging.basicConfig(***kwargs*)这个函数对logging进行设置。函数常用的参数如下:

  •     level:主要调整logging的级别
  •     filename:输出日志的路径
  •     filemode:直接写入还是追加写入
  •     format:输出的格式

示例一:通过调整format,可以输出我们想要的格式

 import logging
 
 logging.basicConfig(format='%(asctime)s - %(message)s', datefmt='%d-%b-%y %H:%M:%S')
 logging.warning('Admin logged out')

结果:

12-Jul-18 20:53:19 - Admin logged out

示例二:logging写多文件日志

#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
logging模块写多文件日志
"""

import logging

#创建文件
file_1 = logging.FileHandler('log_1.log', 'a')
#创建格式
fat = logging.Formatter(fmt="%(asctime)s - %(name)s - %(levelname)s - %(module)s - %(message)s")
#文件应用格式
file_1.setFormatter(fat)

file_2 = logging.FileHandler('log_2.log', 'a')
fmt = logging.Formatter()
file_2.setFormatter(fmt)

logger1 = logging.Logger('s1', level=logging.ERROR)

logger1.addHandler(file_1)
logger1.addHandler(file_2)

#写日志
logger1.critical("i'm a error!")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Python协程的四种实现方式总结

    Python协程的四种实现方式总结

    今天继续给大家介绍Python关知识,本文主要内容是Python协程的四种实现方式。文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-01-01
  • Python语音合成的项目实战(PyQt5+pyttsx3)

    Python语音合成的项目实战(PyQt5+pyttsx3)

    本文主要介绍了Python语音合成的项目实战(PyQt5+pyttsx3),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Python机器学习应用之决策树分类实例详解

    Python机器学习应用之决策树分类实例详解

    决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法
    2022-01-01
  • PyTorch详解经典网络种含并行连结的网络GoogLeNet实现流程

    PyTorch详解经典网络种含并行连结的网络GoogLeNet实现流程

    今天小编就为大家分享一篇Pytorch实现GoogLeNet的方法,GoogLeNet提出了一个名为“Inception”的深度卷积神经网结构,其目标是将分类、识别ILSVRC14数据集的技术水平提高一个层次。这一结构的主要特征是对网络内部计算资源的利用进行了优化
    2022-05-05
  • Python中嵌套类的实现

    Python中嵌套类的实现

    本文主要介绍了Python中嵌套类的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • Python 异常的捕获、异常的传递与主动抛出异常操作示例

    Python 异常的捕获、异常的传递与主动抛出异常操作示例

    这篇文章主要介绍了Python 异常的捕获、异常的传递与主动抛出异常操作,结合实例形式详细分析了Python针对异常捕获、传递、处理等常见操作技巧,需要的朋友可以参考下
    2019-09-09
  • Django实现静态文件缓存到云服务的操作方法

    Django实现静态文件缓存到云服务的操作方法

    这篇文章主要介绍了Django实现静态文件缓存到云服务的操作方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • OpenCV+Python--RGB转HSI的实现

    OpenCV+Python--RGB转HSI的实现

    今天小编就为大家分享一篇OpenCV+Python--RGB转HSI的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • 树莓派使用USB摄像头和motion实现监控

    树莓派使用USB摄像头和motion实现监控

    这篇文章主要为大家详细介绍了树莓派使用USB摄像头和motion实现监控,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • centos+nginx+uwsgi部署django项目上线

    centos+nginx+uwsgi部署django项目上线

    本文主要介绍了centos+nginx+uwsgi部署django项目上线,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07

最新评论