• python之log日志模块


    logging的配置大致有下面几种方式。

    1、        通过代码进行完整配置,logging.getLogger()获取logger后,给logger设置各种handler。

    2.        通过代码进行简单配置,通过logging.basicConfig()方法配置后,直接logging.getLogger(),无需对获取的logger再配置。

    3、        通过配置文件,主要是通过 logging.config.fileConfig(filepath)

    相关类和函数

    支持参数

    logging.basicConfig([**kwargs])

    filename :日志文件的保存路径。如果配置了些参数,将自动创建一个FileHandler作为Handler;

    filemode :日志文件的打开模式。 默认值为’a’,表示日志消息以追加的形式添加到日志文件中。如果设为’w’, 那么每次程序启动的时候都会创建一个新的日志文件;

    format :设置日志输出格式;

    datefmt :定义日期格式;

    level :设置日志的级别.对低于该级别的日志消息将被忽略;

    stream :设置特定的流用于初始化StreamHandler;

    logging.getLogger([name])

     

    handler

    1. logging.StreamHandler: 日志输出到流,可以是sys.stderr、sys.stdout或者文件

    2. logging.FileHandler: 日志输出到文件

    3. logging.handlers.BaseRotatingHandler  #日志轮替存储方式,实际使用时用RotatingFileHandler和TimedRotatingFileHandler

    4. logging.handlers.RotatingFileHandler

    5. logging.handlers.TimedRotatingFileHandler

    6. logging.handlers.SocketHandler: 远程输出日志到TCP/IP sockets

    7. logging.handlers.DatagramHandler:  远程输出日志到UDP sockets

    8. logging.handlers.SMTPHandler:  远程输出日志到邮件地址

    9. logging.handlers.SysLogHandler: 日志输出到syslog

    10. logging.handlers.NTEventLogHandler: 远程输出日志到Windows NT/2000/XP的事件日志

    11. logging.handlers.MemoryHandler: 日志输出到内存中的制定buffer

    12. logging.handlers.HTTPHandler: 通过"GET"或"POST"远程输出到HTTP服务器

    format

    ● %(name)s Logger的名字

    ● %(levelno)s 数字形式的日志级别

    ● %(levelname)s 文本形式的日志级别

    ● %(pathname)s 调用日志输出函数的模块的完整路径名,可能没有

    ● %(filename)s 调用日志输出函数的模块的文件名

    ● %(module)s 调用日志输出函数的模块名|

    ● %(funcName)s 调用日志输出函数的函数名|

    ● %(lineno)d 调用日志输出函数的语句所在的代码行

    ● %(created)f 当前时间,用UNIX标准的表示时间的浮点数表示|

    ● %(relativeCreated)d 输出日志信息时的,自Logger创建以来的毫秒数|

    ● %(asctime)s 字符串形式的当前时间。默认格式是“2003-07-08 16:49:45,896”。逗号后面的是毫秒

    ● %(thread)d 线程ID。可能没有

    ● %(threadName)s 线程名。可能没有

    ● %(process)d 进程ID。可能没有

    ● %(message)s 用户输出的消息

    会优先使用当前线程的日志对象写日志。

  • 相关阅读:
    SpringMVC从Request域中获取数据
    SpringMVC重定向
    SpringMVC的请求转发的三种方法
    SpringMVC文件上传
    SpringMVC处理请求释放静态资源的三种方式
    jackson实现json转换
    SpringMVC之请求部分
    SpringMVC的执行流程
    Java [Leetcode 39]Combination Sum
    深入解析Java对象的hashCode和hashCode在HashMap的底层数据结构的应用
  • 原文地址:https://www.cnblogs.com/stin/p/8350277.html
Copyright © 2020-2023  润新知