logging模块基础
很多程序都有记录日志的需求,日志不仅可以保存访问记录,也可以有错误,警告等信息输出。
python的logging模块提供了标准的日志接口,可以通过logging存储各种格式的日志。logging模块是python内置的日志记录模块。
logging的日志可分为五个级别,分别是:debug(),info(),warning(),error(),critical(),从左到右级别以此增加。
1.会直接输出到屏幕,没有指定操作系统用户,默认是root来执行。
import logging
logging.error("time is so quick")
logging.warning("user attempted error password for 3times")
# ERROR:root:time is so quick
# WARNING:root:user attempted error password for 3times
2.logging.basicConfig(filename,level) ,basicConfig 基本配置。
注意:logging后面跟着的级别应大写。
只有级别高于或者等于设定级别的日志内容才能够存入到日志里。
import logging logging.basicConfig(filename="111.log", level=logging.DEBUG)
logging.debug("user")
logging.error("help")
logging.warning("hello")
logging.critical("info")
logging.info("helps") # DEBUG:root:user
# ERROR:root:help
# WARNING:root:hello
# CRITICAL:root:info
# INFO:root:helps
3.设置格式,时间 + 信息。
import logging logging.basicConfig(filename="111.log", level=logging.DEBUG,
format = "%(asctime)s %(message)s",
datefmt = "%Y/%m/%d-%I:%M :%S %p")
logging.debug("user")
logging.error("help")
logging.warning("hello")
logging.critical("info")
logging.info("helps")
4.级别是怎么划分的?
通过%(levelno)s 可以查看到底层对应的数字,debug最低,为10,critical最高,为50.
import logging logging.basicConfig(filename="111.log", level=logging.DEBUG,
format = "%(asctime)s %(levelno)s %(message)s",
datefmt = "%Y/%m/%d-%I:%M :%S %p")
logging.debug("user")
logging.error("help")
logging.warning("hello")
logging.critical("info")
logging.info("helps") # 2018/04/19-03:45 :22 PM 10 user
# 2018/04/19-03:45 :22 PM 40 help
# 2018/04/19-03:45 :22 PM 30 hello
# 2018/04/19-03:45 :22 PM 50 info
# 2018/04/19-03:45 :22 PM 20 helps
5.常用的一些格式

logging模块基础的更多相关文章
- logging模块基础3
1.logging模块的日志级别 CRITICAL = 50 #FATAL = CRITICAL ERROR = 40 WARNING = 30 #WARN = WARNING INFO = 20 D ...
- python常识系列08-->logging模块基础入门
前言 努力从今天开始,成功从"零"开始. 一.logging模块是什么? 是Python内置的标准模块,主要用于输出运行日志 二.日志是什么? 日志是代码的必要组成部分 记录日志能 ...
- python模块基础之json,requeste,xml,configparser,logging,subprocess,shutil。
1.json模块 json 用于[字符串]和 [python基本数据类型] 间进行转换(可用于不同语言之前转换),json.loads,将字符串转成python的基本数据类型,json.dum ...
- Day15 Python基础之logging模块(十三)
参考源:http://www.cnblogs.com/yuanchenqi/articles/5732581.html logging模块 (****重点***) 一 (简单应用) import lo ...
- python基础学习十 logging模块详细使用【转载】
很多程序都有记录日志的需求,并且日志中包含的信息既有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,主要用于输出 ...
- python基础——14(shelve/shutil/random/logging模块/标准流)
一.标准流 1.1.标准输入流 res = sys.stdin.read(3) 可以设置读取的字节数 print(res) res = sys.stdin.readline() print(res) ...
- Python之日志处理(logging模块一基础)
转载自:https://www.cnblogs.com/yyds/p/6901864.html 本节内容 日志相关概念 logging模块简介 使用logging提供的模块级别的函数记录日志 logg ...
- Python基础之模块:6、hashlib模块 subprocess模块 logging模块
目录 一.hashlib模块 1.简介 2.基本操作与用法 二.subprocess模块 1.简介 2.基本操作与用法 三.logging模块 1.简介 2.基本操作与用法 一.hashlib模块 1 ...
- Python学习笔记——基础篇【第六周】——logging模块
常用模块之logging 用于便捷记录日志且线程安全的模块 import logging logging.basicConfig(filename='log.log', format='%(ascti ...
随机推荐
- PHP——巧用PHP函数array_merge()合并数组
前言 返回联系人列表,包含所有的字母,之前返回的是存在这个联系人才会返回对应的大写字母,后面更改了要求要返回所有的字母从A-Z.PHP内置的一些函数活用起来,真的很省劲! 步骤 一般这时候大家可能直接 ...
- Go——godoc命令简介
前言 godoc的一些简记 命令 godoc的列表 | godoc的chm下载 查看godoc的所有命令 `$ godoc -h` usage: godoc -http=localhost:6060 ...
- SpringMVC配置环境
一,lib目录下加入spring一般所需的jar包 二,配置web.xml <?xml version="1.0" encoding="UTF-8"?&g ...
- iOS NSString拼接字符串
NSString* str_C; // 结果字符串NSString* str_A, str_B; //已存在的字符串,需要将str_A和str_B连接起来 //方法1 str_C = [NSStrin ...
- 一步一步学Silverlight 2系列(18):综合实例之RSS阅读器
一步一步学Silverlight 2系列(18):综合实例之RSS阅读器 概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支 ...
- C++中volatile及编译器优化
首先看一下单词"volatile"的释义: volatile [ˈvɑlətl] adj. 易变的,不稳定的; (液体或油)易挥发的; 爆炸性的; 快活的,轻快的; 下边是&qu ...
- 识别String类型变量的问题
碰到了android无法识别string的问题 Cursor cursor = db.query(true, "user", new String[]{"id" ...
- 【HDU 2089】 不要62
[题目链接] 点击打开链接 [算法] 数位DP 和上一题 : HDU3555很像 [代码] #include<bits/stdc++.h> using namespace std; #de ...
- 如何生成Android的keystore文件
步骤 1 找到本机电脑上jdk安装的目录,使用cmd命令打开命令窗口,输入cd jdk目录(替换成你的jdk的bin目录),进入到jdk的bin目录,接下来你才可以使用jdk的命令进行操作 步骤 ...
- bzoj1097
最短路+状压dp 肯定是状压dp 那么我们把k个点的单源最短路预处理出来,然后dp[i][j]表示状态为i,当前在j需要走的最短距离,给定的限制用状态压一下就行了 注意特判k=0的情况 #includ ...