Python的log日志功能及设置方法
引入:Python中有个logging模块可以完成相关信息的记录,在debug时用它往往事半功倍
一、日志级别(从低到高):
DEBUG :详细的信息,通常只出现在诊断问题上
INFO:确认一切按预期运行
WARNING:一个迹象表明,一些意想不到的事情发生了,或表明一些问题在不久的将来(例如。磁盘空间低”)。这个软件还能按预期工作。
ERROR:更严重的问题,软件没能执行一些功能
CRITICAL :一个严重的错误,这表明程序本身可能无法继续运行
注:这5个等级,也分别对应5种打日志的方法: debug 、info 、warning 、error 、critical。默认的是WARNING,当在WARNING或之上时才被跟踪。
二、日志输出:显示到控制台或保存到文件中,可以灵活选用
# 这里为了简便,同时处理:输出控制台和保存到文件中 import logging # 第一步,创建一个logger logger = logging.getLogger() logger.setLevel(logging.INFO) # Log等级总开关 # 第二步,创建一个handler,用于写入日志文件 logfile = './log.txt' fh = logging.FileHandler(logfile, mode='a') # open的打开模式这里可以进行参考 fh.setLevel(logging.DEBUG) # 输出到file的log等级的开关 # 第三步,再创建一个handler,用于输出到控制台 ch = logging.StreamHandler() ch.setLevel(logging.WARNING) # 输出到console的log等级的开关 # 第四步,定义handler的输出格式 formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s") fh.setFormatter(formatter) ch.setFormatter(formatter) # 第五步,将logger添加到handler里面 logger.addHandler(fh) logger.addHandler(ch) # 日志 logger.debug('这是 logger debug message') logger.info('这是 logger info message') logger.warning('这是 logger warning message') logger.error('这是 logger error message') logger.critical('这是 logger critical message')
三、日志格式说明
logging.basicConfig函数中,可以指定日志的输出格式format,这个参数可以输出很多有用的信息,如下:
%(levelno)s: 打印日志级别的数值
%(levelname)s: 打印日志级别名称
%(pathname)s: 打印当前执行程序的路径,其实就是sys.argv[0]
%(filename)s: 打印当前执行程序名
%(funcName)s: 打印日志的当前函数
%(lineno)d: 打印日志的当前行号
%(asctime)s: 打印日志的时间
%(thread)d: 打印线程ID
%(threadName)s: 打印线程名称
%(process)d: 打印进程ID
%(message)s: 打印日志信息
以上这篇Python的log日志功能及设置方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Python日志模块logging基本用法分析
本文实例讲述了Python日志模块logging基本用法.分享给大家供大家参考,具体如下: 1. 基础用法 python提供了一个标准的日志接口,就是logging模块.日志级别有DEBUG.INFO.WARNING.ERROR.CRITICAL五种(级别依次升高),分别对应的函数为debug().info().warning().error().critical(). >>> import logging >>> logging.debug("ni hao&
-
详解Python中的日志模块logging
许多应用程序中都会有日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系统的运行状况进行跟踪.在.NET平台中,有非常著名的第三方开源日志组件log4net,c++中,有人们熟悉的log4cpp,而在python中,我们不需要第三方的日志组件,因为它已经为我们提供了简单易用.且功能强大的日志模块:logging.logging模块支持将日志信息保存到不同的目标域中,如:保存到日志文件中:以邮件的形式发送日志信息:以http get或post的方式提交日志到web服务器:以windows事
-
python logging日志模块的详解
python logging日志模块的详解 日志级别 日志一共分成5个等级,从低到高分别是:DEBUG INFO WARNING ERROR CRITICAL. DEBUG:详细的信息,通常只出现在诊断问题上 INFO:确认一切按预期运行 WARNING:一个迹象表明,一些意想不到的事情发生了,或表明一些问题在不久的将来(例如.磁盘空间低").这个软件还能按预期工作. ERROR:更严重的问题,软件没能执行一些功能 CRITICAL:一个严重的错误,这表明程序本身可能无法继续运行 这5个等级,也
-
python日志logging模块使用方法分析
本文实例讲述了python日志logging模块使用方法.分享给大家供大家参考,具体如下: 一.从一个使用场景开始 开发一个日志系统, 既要把日志输出到控制台, 还要写入日志文件 import logging # 创建一个logger logger = logging.getLogger('mylogger') logger.setLevel(logging.DEBUG) # 创建一个handler,用于写入日志文件 fh = logging.FileHandler('test.log') fh
-
Python中使用logging和traceback模块记录日志和跟踪异常
logging模块 logging模块用于输出运行日志,可以设置不同的日志等级,保存信息到日志文件中等. 相比print,logging可以设置日志的等级,控制在发布版本中的输出内容,并且可以指定日志的输出格式. 1. 使用logging在终端输出日志 #!/usr/bin/env python # -*- coding:utf-8 -*- import logging # 引入logging模块 # 设置打印日志级别 CRITICAL > ERROR > WARNING > INFO
-
python logging日志模块以及多进程日志详解
本篇文章主要对 python logging 的介绍加深理解.更主要是 讨论在多进程环境下如何使用logging 来输出日志, 如何安全地切分日志文件. 1. logging日志模块介绍 python的logging模块提供了灵活的标准模块,使得任何Python程序都可以使用这个第三方模块来实现日志记录.python logging 官方文档 logging框架中主要由四个部分组成: Loggers: 可供程序直接调用的接口 Handlers: 决定将日志记录分配至正确的目的地 Filters:
-
python 通过logging写入日志到文件和控制台的实例
如下所示: import logging # 创建一个logger logger = logging.getLogger('mylogger') logger.setLevel(logging.DEBUG) # 创建一个handler,用于写入日志文件 fh = logging.FileHandler('test.log') fh.setLevel(logging.DEBUG) # 再创建一个handler,用于输出到控制台 ch = logging.StreamHandler() ch.set
-
python实现log日志的示例代码
源代码: # coding=utf-8 import logging import os import time LEVELS={'debug':logging.DEBUG,\ 'info':logging.INFO,\ 'warning':logging.WARNING,\ 'error':logging.ERROR,\ 'critical':logging.CRITICAL,} logger=logging.getLogger() level='default' def createFile
-
Python3.6日志Logging模块简单用法示例
本文实例讲述了Python3.6日志Logging模块简单用法.分享给大家供大家参考,具体如下: Logging是一个很方便的模块,用来打印日志 我直接列出一个最灵活的方法 # -*- coding:utf-8 -*- #!python3 import logging logger = logging.getLogger() # logging对象 fh = logging.FileHandler("test.log") # 文件对象 sh = logging.StreamHandle
-
Python的log日志功能及设置方法
引入:Python中有个logging模块可以完成相关信息的记录,在debug时用它往往事半功倍 一.日志级别(从低到高): DEBUG :详细的信息,通常只出现在诊断问题上 INFO:确认一切按预期运行 WARNING:一个迹象表明,一些意想不到的事情发生了,或表明一些问题在不久的将来(例如.磁盘空间低").这个软件还能按预期工作. ERROR:更严重的问题,软件没能执行一些功能 CRITICAL :一个严重的错误,这表明程序本身可能无法继续运行 注:这5个等级,也分别对应5种打日志的方法:
-
nohup后台启动Python脚本,log不刷新的解决方法
问题: =>nohup python3 xxxx.py &后台启动脚本 tail -100f nohup.out --------> 无显示 原因: python的输出有缓冲,导致日志文件并不能够马上看到输出. -u参数,使得python不启用缓冲. 方法: 所以修改命令即可: nohup python3 -u xxxx.py > nohup.out & 以上这篇nohup后台启动Python脚本,log不刷新的解决方法就是小编分享给大家的全部内容了,希望能
-
python用plt画图时,cmp设置方法
在python,有时候是需要画图的,比如把一个矩阵用图像的形式显示,之前用的好好的,每次用plt.imshow(),都是彩色图,不知为啥,突然全是黑白图了,于是需要设置cmap的值,如下: plt.imshow(confusion_matrix_percent,cmap='gray') plt.colorbar() plt.show() 在上面的代码中,设置cmap='gray',表示绘制灰度图,若需要绘制彩色图,可设置其它值,个人比较喜欢用 PRGn或者PRGn_r cmap的候选值有 'Ac
-
python保存log日志,实现用log日志画图
在神经网络训练中,我们常常需要画出loss function的变化图,log日志里会显示每一次迭代的loss function的值,于是我们先把log日志保存为log.txt文档,再利用这个文档来画图. 1,先来产生一个log日志. import mxnet as mx import numpy as np import os import logging logging.getLogger().setLevel(logging.DEBUG) # Training data logging.ba
-
解决python 读取 log日志的编码问题
1.我要读取log日志的"执行成功"的个数,log日志编码格式为GBK 2.显示报错,大致意思是说utf-8的代码不能解析log日志 3.后来想想把log日志用GBK编码读出来,写到新文件中,用utf-8编码,解决了问题. 以上这篇解决python 读取 log日志的编码问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
Python实现邮件发送的详细设置方法(遇到问题)
设置部分: 首先网页登录QQ邮箱设置一些待会儿会用到的参数: 首先开启POP3/SMTP和IMAP/SMTP服务, 然后生成授权码,然后复制到代码中来(只有smtp.qq.com需要生成授权码,在网易163邮箱中只需要登录密码就可以了) 代码部分: import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart def sendMail(msg): #发送邮件的邮
-
使用Filter过滤python中的日志输出的实现方法
事情是这样的,我写了一个tornado的服务,过程当中我用logging记录一些内容,由于一开始并没有仔细观察tornado自已的日志管理,所以我就一般用debug来记录普通日志,error记录有问题的日志,但是当服务跑起来以后才发现,tornado的访问日志的级别是info,也就是20,debug是10的,所以如果我定义了日志的级别是debug,那么默认情况下肯定也会输出到日志文件中的. 但是我现在并不关心访问日志,而且由于我这个服务可能每时每刻都会有访问,这样在我对日志信息进行搜索的时候就会
-
android轻松管理安卓应用中的log日志 发布应用时log日志全部去掉的方法
管理log一般有两种方法,博主推荐大家使用下面的第一种方法: 第一种方法: 第一步:定义一个logTools工具类,相信你能够看懂的,谁的log,可以用谁的名字做方法名,如logli,这就是工程师li打印的日志 复制代码 代码如下: import android.util.Log; public class LogTools { public static boolean isShow = true;//上线模式 //public static boolean isShow = false;//
-
python安装和pycharm环境搭建设置方法
一.python 开发工具的选择 python开发工具有很多,这里推荐使用 pycharm:因为jetbrains公司拥有众多的开发工具以及开发拥护者.这些工具有相同的风格和各类使用案例.描述问题的博客,可供初学者参考. 1.pycharm professional edition - 专业版,可以试用30天 https://download.jetbrains.8686c.com/python/pycharm-professional-2020.1.1.exe jetbrains pychar
随机推荐
- 编写xml没有代码提示的解决方法
- jQuery插件EasyUI获取当前Tab中iframe窗体对象的方法
- 详谈javascript中的cookie
- 在ASP.NET 2.0中操作数据之十六:概述插入、更新和删除数据
- Python整型运算之布尔型、标准整型、长整型操作示例
- Javascript中this的用法详解
- PHP中文件缓存转内存缓存的方法
- JS左右无缝滚动(一般方法+面向对象方法)
- W3C标准:实时切换CSS样式
- 归纳整理Python中的控制流语句的知识点
- 利用js动态添加删除table行的示例代码
- 浅析jQuery操作select控件的取值和设值
- js转义字符介绍
- 使用Javascript监控前端相关数据的代码
- Linux中RPM文件操作的常用命令总结
- 基于eclipse.ini内存设置的问题详解
- Java枚举类用法实例
- Android Drawable及其相关类的使用
- JAVA如何调用wsdl过程详解
- php中的钩子理解及应用实例分析