栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

log技术

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

log技术

log技术_logging_basicConfig()函数_在日志文件中记录异常
1、参数说明

1、logging.basicConfig()函数各参数说明:
    1、filename:指定日志文件名;
    2、filemode:和file函数意义相同,指定日志文件的打开模式,'w'或者'a';
    3、format:指定输出的格式和内容,format可以输出很多有用的信息;
    4、level:日志级别
2、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
3、日志级别:
	log.debug('调试')
	log.info('信息')
	log.warning('警告')
	log.error('错误')
	log.critical('糟糕')
4、日志设置
	1、存放路径
	2、日志文件名
	3、内容格式:format
	    2020_10_14.21.34.24 - logBasic.py [代码错误的行号] 级别:具体内容执行时间 文件名 【报错行号】 等级 msg(具体信息)

2、Python 代码 把日志写到文件里(封装log方法)

import logging  # logging默认打印warning以上级别的信息
from datetime import datetime
import time
import traceback  # 将原始报错的信息返回出来

def logger():
    logging.basicConfig(format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s',
                        filename=f'./{datetime.now().strftime("%Y-%m-%d-%H.%M.%S")}.txt',
                        level=logging.INFO,
                        filemode='a+')
    return logging


if __name__ == '__main__':
    log = logger()
    log.error('---hello---')

    try:
        input = int(input('请输入一个整数:'))
        print(1/input)
    except:  # 捕获所有的异常
        # 返回时间和原始报错信息
        log.error(time.strftime('%y-%m-%d %H:%M:%S')+traceback.format_exc() + '-------------- n')


# 生成的日志文件内容如下:
# 2022-07-02 12:52:49,361 - log����_logging_basicConfig������������˵��.py[line:60] - ERROR: ---hello---
# 2022-07-02 12:52:53,042 - log����_logging_basicConfig������������˵��.py[line:67] - ERROR: 22-07-02 12:52:53Traceback (most recent call last):
#   File "F:/4-Project/Project_�����/�ܽ�_Python֪ʶ��/03_log����_�쳣��־/log����_logging_basicConfig������������˵��.py", line 63, in 
#     input = int(input('������һ��������'))
# ValueError: invalid literal for int() with base 10: '1.1'
# --------------
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1002458.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号