建设班级网站首页wordpress

当前位置: 首页 > news >正文

建设班级网站首页,wordpress-,门户网站是如何做引流的,直通车关键词怎么选 选几个python日志模块#xff0c;loggin模块loggin模块日志的格式处理器种类日志格式的参数使用loggin模块 logging库采用模块化方法#xff0c;并提供了几类组件#xff1a;记录器#xff0c;处理程序#xff0c;过滤器和格式化程序。 记录器#xff08;Logger#xff09;loggin模块loggin模块日志的格式处理器种类日志格式的参数使用loggin模块 logging库采用模块化方法并提供了几类组件记录器处理程序过滤器和格式化程序。 记录器Logger提供应用程序代码直接使用的接口。 ​ 相当于笔记录日志信息。记录器可以有多个处理器 处理器Handler将日志记录由记录器创建发送到适当的目的地。 ​ 将记录器记录的日志信息发送到其他位置处理器可以有多个每个处理器指定一个位置 筛选器Filter提供了更细粒度的功能用于确定要输出的日志记录。 ​ 筛选记录器进行筛选通过筛选的输出其记录的日志 格式器Formatter程序在最终输出日志记录的内容格式。 ​ 定义日志的格式内容格式保存方式切割方式
都可以根据情况定义多个 日志的格式 日志的级别日志的数字级别说明debug10详细信息常用于调试info20程序正常运行产生的日志warning30警告性日志程序仍正在运行可能出现问题error40错误日志程序已经不能执行一些功能了critical50严重错误程序已不能运行 记录器默认日志级别为warning处理器不做日志等级设置会继承记录器的日志等级设置。 处理器做日志级别设置后处理器按照处理器自身的日志级别执行。但是处理器设置的日志级别低于记录器默认日志级别时不会生效。如果想要处理器日志级别低于记录器的默认日志级别warning需要设置降低记录器的日志级别 处理器种类 处理器说明logging.StreamHandler()把日志标准输出到屏幕logging.FileHandler()把日志写入一个文件如不能直接使用需再次导入import logging.handlers导入全部处理器或from logging.handlers import RotatingFileHandler导入需要的某个处理器logging.handlers.RotatingFileHandler()日志回滚方式,按日志大小切割备份日志logging.handlers.TimedRotatingFileHandler()日志回滚方式,按日志使时间切割备份日志logging.handlers.BaseRotatingHandler()基本的日志回滚方式logging.handlers.SocketHandler()远程输出日志到TCP/IP socketslogging.handlers.SMTPHandler()远程输出日志到邮件地址logging.handlers.SysLogHandler()日志输出到sysloglogging.handlers.DatagramHandler()远程输出日志到UDP socketslogging.handlers.NTEventLogHandler()远程输出日志到Windows NT/2000/XP的事件日志logging.handlers.BufferingHandler()logging.handlers.HTTPHandler()通过GET或者POST远程输出到HTTP服务器logging.handlers.MemoryHandler()日志输出到内存中的指定bufferlogging.handlers.WatchedFileHandler()logging.handlers.QueueHandler() https://blog.csdn.net/llf_cloud/article/details/88642830 logging — Python 的日志记录工具 — Python 3.11.2 文档 日志格式的参数 format参数中可能用到的格式化信息 参数说明%(asctime)s字符串形式的当前时间。默认格式是 “2003-07-08 16:49:45,896”。逗号后面的是毫秒%(name)s记录器的名字%(levelname)s名字形式的日志级别%(levelno)s数字形式的日志级别%(filename)s调用日志输出函数的模块的python文件名%(pathname)s调用日志输出函数的模块的完整路径名即python文件的完整路径%(module)s调用日志输出函数的模块名可能同%(filename)s%(funcName)s调用日志输出函数的函数名%(lineno)d调用日志输出函数的语句所在的代码行即句日志所在代码的行数%(created)f当前时间用UNIX标准的表示时间的浮点数表示即时间戳%(relativeCreated)d输出日志信息时的自Logger创建以 来的毫秒数%(thread)d线程ID。可能没有%(threadName)s线程名。可能没有%(process)d进程ID。可能没有%(message)s日志的具体信息 示例 logger logging.getLogger(mylog) …. formatter logging.Formatter(%(asctime)s - %(name)s - %(levelname)s - %(levelno)s - %(filename)s - %(pathname)s - %(module)s- %(funcName)s - %(lineno)d - %(created)f - %(relativeCreated)d - %(thread)d - %(threadName)s - %(process)d - %(message)s)D:\gitee\python\venv\Scripts\python.exe D:\gitee\python\python相关\巡检脚本更新1\master2.py 2023-03-05 11:17:47,335 - mylog - INFO - 20 - pythonSsh.py - D:\gitee\python\python相关\巡检脚本更新1\pythonSsh.py - pythonSsh- myserver - 45 - 1677986267.335183 - 217 - 12912 - MainThread - 18536 - 开始建立与服务器的连接使用 import logging import logging.handlers# from logging.handlers import RotatingFileHandler# 记录器 处理器 过滤器 日志格式 均可根据需要设置多个# 创建记录器记录器名字为app logger logging.getLogger(app)# 设置记录器记录日志的等级为INFO即只把INFO及INFO以上的日志信息记录下来 logger.setLevel(logging.INFO)# 创建处理器,处理器可以有多个# 创建把日志屏幕输出的处理器 console_handler logging.StreamHandler()# 创建把日志写入文件的处理器文件未做特殊设置会一直把日志写入此文件不做切分

日志名字日志写入方式追加写 日志字符集UTF-8 日志缓存 False 无缓存

file_handler logging.FileHandler(filenameapp.log, modea, encodingUTF-8, delayFalse)# 设置日志格式

s前的数字8表示占8位字符为了对齐

8前的-表示左对齐默认为右对齐

时间 日志名 日志等级 日志信息

formatter1 logging.Formatter(%(asctime)s - %(thread)d - %(levelname)s - %(message)s) formatter2 logging.Formatter(%(asctime)s - %(levelname)-8s - %(message)s) formatter2 示例 2023-03-05 12:18:33,252 - INFO - this is test info 2023-03-05 12:18:33,252 - WARNING - this is test warning 2023-03-05 12:18:33,252 - ERROR - this is test error 2023-03-05 12:18:33,252 - CRITICAL - this is test critical# 把日志格式添加到处理器 console_handler.setFormatter(formatter2) file_handler.setFormatter(formatter1)# 把创建的处理器添加到处理器 logger.addHandler(console_handler) logger.addHandler(file_handler)# 创建过滤器(过滤器非必要条件也可以不创建)# 把记录器app 添加到过滤器 fil logging.Filter(app)# 给记录器关联过滤器 logger.addFilter(fil)# 也可以给处理器关联过滤器 console_handler.addFilter(fil)# 打印日志的代码 logger.debug(this is test debug) logger.info(this is test info) logger.warning(this is test warning) logger.error(this is test error) logger.critical(this is test critical)# 异常日志记录 n abc try:int(n)logger.info(test try ok) except Exception as e:logger.exception(this test exception %s,e)#参考

https://blog.csdn.net/weixin_47154909/article/details/106203639日志内容

2023-03-05 14:42:17,869 - 20472 - INFO - this is test info 2023-03-05 14:42:17,869 - 20472 - WARNING - this is test warning 2023-03-05 14:42:17,870 - 20472 - ERROR - this is test error 2023-03-05 14:42:17,870 - 20472 - CRITICAL - this is test critical 2023-03-05 14:42:17,870 - 20472 - ERROR - this test exception invalid literal for int() with base 10: abc Traceback (most recent call last):File D:\gitee\python\python相关\日志模块logging.py, line 106, in moduleint(n) ValueError: invalid literal for int() with base 10: abc