logging 模块 与 logging 固定模块

import logging

# 1. 控制日志级别# 2. 控制日志格式# 3. 控制输出的目标为文件logging.basicConfig(filename=‘access.log‘,                    format=‘%(asctime)s - %(name)s - %(levelname)s -%(module)s:  %(message)s‘,                    datefmt=‘%Y-%m-%d %H:%M:%S %p‘,                    level=10,                    )

logging.debug(‘debug日志‘) # 10logging.info(‘info日志‘)   # 20logging.warning(‘warning日志‘) #30logging.error(‘error日志‘)#40logging.critical(‘critical日志‘) #50

# 火警的级别

# 大功率电器# 抽烟# 烧烤# 自焚# 烧房

# 1. 能够同时往终端与文件中记录日志# 2. 能够修改字符串编码

import logging

# 1. logger对象: 负责生产各种级别的日志logger1 = logging.getLogger(‘用户交易‘)  # 日志名用来标识日志的与什么业务有关

# 2. filter对象: 过滤日志

# 3. handler对象: 控制日志输出目标位置fh1 = logging.FileHandler(‘a1.log‘,encoding=‘utf-8‘)fh2 = logging.FileHandler(‘a2.log‘,encoding=‘utf-8‘)ch = logging.StreamHandler()

# 4. formmater对象formatter1 = logging.Formatter(    fmt=‘%(asctime)s - %(name)s - %(levelname)s -%(module)s:  %(message)s‘,    datefmt=‘%Y-%m-%d %H:%M:%S %p‘)

formatter2 = logging.Formatter(    fmt=‘%(asctime)s - %(levelname)s :  %(message)s‘,    datefmt=‘%Y-%m-%d %H:%M:%S %p‘)

# 5. 绑定logger对象与handler对象logger1.addHandler(fh1)logger1.addHandler(fh2)logger1.addHandler(ch)

# 6. 绑定handler对象与formatter对象

fh1.setFormatter(formatter1)fh2.setFormatter(formatter1)ch.setFormatter(formatter2)

# 7. 设置日志级别,有logger对象与handler对象两层关卡,必须都放行最终日志才会放行,通常二者级别相同logger1.setLevel(10)fh1.setLevel(10)fh2.setLevel(10)ch.setLevel(10)

# 8. 使用logger对象产生日志logger1.info(‘alex给egon转账1个亿‘)

logging 固定模块
standard_format = ‘%(asctime)s - task:%(name)s - %(filename)s:%(lineno)d -‘ \                  ‘ %(levelname)s : [%(message)s]‘

simple_format = ‘%(filename)s:%(lineno)d - %(levelname)s : [%(message)s]‘

fh1_path = r‘a1.log‘fh2_path = r‘a2.log‘

# log配置字典LOGGING_DIC = {    ‘version‘: 1,    ‘disable_existing_loggers‘: False,    ‘formatters‘: {        ‘standard‘: {            ‘format‘: standard_format        },        ‘simple‘: {            ‘format‘: simple_format        },    },    ‘filters‘: {},    ‘handlers‘: {        #打印到终端的日志        ‘ch‘: {            ‘level‘: ‘DEBUG‘,            ‘class‘: ‘logging.StreamHandler‘,  # 打印到终端            ‘formatter‘: ‘simple‘        },        #打印到a1.log文件的日志        ‘fh1‘: {            ‘level‘: ‘DEBUG‘,            ‘class‘: ‘logging.FileHandler‘,  # 保存到文件            ‘formatter‘: ‘standard‘,            ‘filename‘: fh1_path,  # 日志文件的路径            ‘encoding‘: ‘utf-8‘,  # 日志文件的编码,再也不用担心中文log乱码了        },        # 打印到a2.log文件的日志        ‘fh2‘: {            ‘level‘: ‘DEBUG‘,            ‘class‘: ‘logging.FileHandler‘,  # 保存到文件            ‘formatter‘: ‘simple‘,            ‘filename‘: fh2_path,  # 日志文件的路径            ‘encoding‘: ‘utf-8‘,  # 日志文件的编码,再也不用担心中文log乱码了        },

},    ‘loggers‘: {        ‘‘: {            ‘handlers‘: [‘fh1‘, ‘fh2‘, ‘ch‘],            ‘level‘: ‘DEBUG‘,        },    },}


原文地址:https://www.cnblogs.com/liu--huan/p/9456907.html

时间: 2024-12-01 17:47:21

logging 模块 与 logging 固定模块的相关文章

7)封装、反射、序列化以及logging 、configparse 、 hashilib模块

一 .封装使用 封装: #封装 变量和函数都放在类中,广义#狭义的封装:吧一些变量或者方法隐藏起来,不对外公开,只提供内部使用 #共有的 #私有的:__名字 class Person:    __country = '中国' # print(Person.__country)#AttributeError: type object 'Person' has no attribute '__country'#私有属性,只能在类的内部使用,不能在类的外部使用print(Person.__dict__

第三十六篇 hashlib模块、hmac模块和logging模块

目录 第三十七篇 hashlib模块.hmac模块和logging模块 一.hashlib模块 1.hash是什么 2.撞库破解hash算法加密 二.hmac模块 三.logging模块 1.日志的五个级别 2.V3 3.日志配置文件 4.总结 第三十七篇 hashlib模块.hmac模块和logging模块 一.hashlib模块 1.hash是什么 1.hashlib模块一般用于明文加密 2.hash是一种算法,在hashlib模块中主要提供了md5 等算法,传入的内容通过这些算法,会得到一

python模块之logging

在现实生活中,记录日志非常重要.银行转账时会有转账记录:飞机飞行过程中,会有黑盒子(飞行数据记录器)记录飞行过程中的一切.如果有出现什么问题,人们可以通过日志数据来搞清楚到底发生了什么.对于系统开发.调试以及运行,记录日志都是同样的重要.如果没有日志记录,程序崩溃时你几乎就没办法弄明白到底发生了什么事情.举个例子,当你在写一个服务器程序时,记录日志是非常有必要的.下面展示的就是 EZComet.com 服务器的日志文件截图. 服务崩溃后,如果没有日志,我几乎没办法知道到底发生了错误.日志不仅对于

16.常用模块【logging/*re】

logging序列化模块***jsonpicklere正则元字符字符集分组()命名分组管道符 |反斜杠\方法re.finditerre.searchre.matchre.splitre.subre.compile logging 等级: debug info warning error critical warning以上的才打印反馈 >>> logging.debug('debug------') >>> >>> s = logging.debug(

python模块学习 logging

1.简单的将日志打印到屏幕 import logging logging.debug('This is debug message') logging.info('This is info message') logging.warning('This is warning message') 屏幕上打印: WARNING:root:This is warning message 默认情况下,logging将日志打印到屏幕,日志级别为WARNING:日志级别大小关系为:CRITICAL > ER

Python基础(12)_python模块之sys模块、logging模块、序列化json模块、pickle模块、shelve模块

5.sys模块 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 sys.maxint 最大的Int值 sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 sys.platform 返回操作系统平台名称 5.1 使用sys.argv进行登录判断,跳过 i/o阻塞 #使用sys.argv进行登录判断,跳过 i/o阻塞 import s

常用模块---sys&logging&序列化模块(json&pickle)

sys 模块 sys.argv 命令行参数List,第一个元素是程序本身路径,通常用来避免io 阻塞 print('欢迎进入') info=sys.argv if info[index('-u')+1] == 'mona' and info[index('-p')+1] == '123': print('login successful') sys.exit(n) 退出程序,正常退出时exit(0) count=1 while count<10: if count == 8: sys.exit(

8.模块介绍 time &amp;datetime模块 random os sys shutil json &amp; picle shelve xml处理 yaml处理 configparser hashlib subprocess logging模块 re正则表达式

本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configparser hashlib subprocess logging模块 re正则表达式 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才能完成(函数又可以在不同的.p

7、模块之三 logging模块

1.logging模块 # python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,logging的日志可以分为 # debug(), info(), warning(), error() and critical() 5个级别 # Level When it’s used # DEBUG Detailed information, typically of interest only when diagnosing problems. # INFO Confirm