python实现简单日志记录库glog的使用


Posted in Python onDecember 13, 2019

这篇文章主要介绍了python实现简单日志记录库glog的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一、 glog的简介
glog所记录的日志信息总是记录到标准的stderr中,即控制台终端。

每一行日志记录总是会添加一个谷歌风格的前缀,即google-style log prefix, 它的形式如下:

E0924 22:19:15.123456 19552 filename.py:87] some message

上面红色部分加粗的就是谷歌风格的日志前缀,每一个部分都有其含义,定义如下:

(1)第一个字母表示日志的类型,E表示error,I表示info,W表示warning,F表示fatal

(2)紧接在后面的表示记录日志的时间,格式为MMDD,比如这里0924,表示的是9月24日

(3)紧接在日期后面的是时间,格式为HH:MM:SS.microseconds,比如这里的时间是22时19分15秒123456毫秒

(4)紧接着是进程的ID,即Process ID,也就是上面的19552

(5)紧接着是运行的程序文件,比如test.py

(6)最后是记录这一句日志是在文件中的哪一行发生的,比如87,指的是这句话是在py文件中的87行

二、glog有哪些功能
我们大致看一下glog模块里面定义的方法

复制代码
"""A simple Google-style logging wrapper."""

import logging
import time
import traceback
import os

import gflags as flags

# 这些方法其实都是来自于logging模块
debug = logging.debug
info = logging.info
warning = logging.warning
warn = logging.warning
error = logging.error
exception = logging.exception
fatal = logging.fatal
log = logging.log

DEBUG = logging.DEBUG
INFO = logging.INFO
WARNING = logging.WARNING
WARN = logging.WARN
ERROR = logging.ERROR
FATAL = logging.FATAL

#下面这些方法常用来检查某些条件或者是结果,然后根据实际情况输出日志信息
def check_failed(message):

def check(condition, message=None):

def check_eq(obj1, obj2, message=None):

def check_ne(obj1, obj2, message=None):

def check_le(obj1, obj2, message=None):

def check_ge(obj1, obj2, message=None):

def check_lt(obj1, obj2, message=None):

def check_gt(obj1, obj2, message=None):
复制代码
logging提供了一组便利的函数,用来做简单的日志。它们是 debug()、 info()、 warning()、 error() 和 critical()。

logging以严重程度递增排序:

DEBUG:详细信息,一般只在调试问题时使用

INFO:证明事情按预期工作

WARNING:某些没有预料到的时间提示,或者在将来可能会出现的问题提示。例如:磁盘空间不足,但是软件还是会照常运作

ERROR:由于更严重的问题,软件已不能执行一些功能了

CRITICAL:严重错误,表明软件已不能继续运行了

级别排序:CRITICAL>ERROR>WARNING>INFO>DEBUG

默认等级是WARNING

三、glog模块的简单示例

import glog
 
a=100
if a==100:
  glog.info("a=100")
 
b=0
if b==0:
  glog.error("b=0!")
  glog.fatal("b is 0")
  glog.warn("b is really 0?")
'''运行结果为:
I0626 15:35:54.071558 17300 test.py:10] a=100
E0626 15:35:54.072561 17300 test.py:14] b=0!
F0626 15:35:54.072561 17300 test.py:15] b is 0
W0626 15:35:54.072561 17300 test.py:16] b is really 0?
'''

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

Python 相关文章推荐
布同 Python中文问题解决方法(总结了多位前人经验,初学者必看)
Mar 13 Python
python获取元素在数组中索引号的方法
Jul 15 Python
python从入门到精通(DAY 3)
Dec 20 Python
python中函数传参详解
Jul 03 Python
Python元组知识点总结
Feb 18 Python
Python叠加两幅栅格图像的实现方法
Jul 05 Python
pandas.DataFrame的pivot()和unstack()实现行转列
Jul 06 Python
python之拟合的实现
Jul 19 Python
Python socket 套接字实现通信详解
Aug 27 Python
Python基础之字符串操作常用函数集合
Feb 09 Python
利用Python中的Xpath实现一个在线汇率转换器
Sep 09 Python
Python字典取键、值对的方法步骤
Sep 30 Python
利用matplotlib实现根据实时数据动态更新图形
Dec 13 #Python
Python3将jpg转为pdf文件的方法示例
Dec 13 #Python
如何使用python3获取当前路径及os.path.dirname的使用
Dec 13 #Python
PyQt5多线程刷新界面防假死示例
Dec 13 #Python
wxpython多线程防假死与线程间传递消息实例详解
Dec 13 #Python
python-web根据元素属性进行定位的方法
Dec 13 #Python
python Jupyter运行时间实例过程解析
Dec 13 #Python
You might like
destoon出现验证码不显示时的紧急处理方法
2014/08/22 PHP
PHP解析url并得到url参数方法总结
2018/10/11 PHP
List Installed Software Features
2007/06/11 Javascript
javascript setAttribute, getAttribute 在不同浏览器上的不同表现
2010/08/05 Javascript
jQuery EasyUI API 中文文档 - Parser 解析器
2011/09/29 Javascript
jquery利用ajax调用后台方法实例
2013/08/23 Javascript
JavaScript多并发问题如何处理
2015/10/28 Javascript
JavaScript动态生成二维码图片
2016/04/20 Javascript
jQuery弹出层后禁用底部滚动条(移动端关闭回到原位置)
2016/08/29 Javascript
JS实现控制图片显示大小的方法【图片等比例缩放功能】
2017/02/18 Javascript
基于Vue过渡状态实例讲解
2017/09/14 Javascript
vue实现图片预览组件封装与使用
2019/07/13 Javascript
node.js使用stream模块实现自定义流示例
2020/02/13 Javascript
Vue项目开发常见问题和解决方案总结
2020/09/11 Javascript
[02:56]DOTA2英雄基础教程 巨魔战将
2013/12/10 DOTA
[06:37]2014DOTA2国际邀请赛 昔日王者渴望重回巅峰
2014/07/12 DOTA
[51:44]2018DOTA2亚洲邀请赛 4.3 突围赛 Optic vs iG 第二场
2018/04/04 DOTA
[19:54]夜魇凡尔赛茶话会 第一期02:看图识人
2021/03/11 DOTA
Python及PyCharm下载与安装教程
2017/11/18 Python
使用Python通过win32 COM实现Word文档的写入与保存方法
2018/05/08 Python
python实现汉诺塔算法
2021/03/01 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
Python Django简单实现session登录注销过程详解
2019/08/06 Python
python3使用print打印带颜色的字符串代码实例
2019/08/22 Python
python通过链接抓取网站详解
2019/11/20 Python
Python统计学一数据的概括性度量详解
2020/03/03 Python
python中spy++的使用超详细教程
2021/01/29 Python
美国知名的网上鞋类及相关服装零售商:Shoes.com
2017/05/06 全球购物
美国在线旅行社:Crystal Travel
2018/09/11 全球购物
日语专业毕业生求职信
2013/12/04 职场文书
三年大学生活自我鉴定
2014/01/21 职场文书
质量保证书
2015/01/17 职场文书
2016年“七一建党节”广播稿
2015/12/18 职场文书
pycharm2021激活码使用教程(永久激活亲测可用)
2021/03/30 Python
nginx 配置缓存
2022/05/11 Servers
Python实现聚类K-means算法详解
2022/07/15 Python