美文网首页
日志模块 logging

日志模块 logging

作者: 魔曦帝天 | 来源:发表于2019-09-25 19:19 被阅读0次

    basicConfig 函数用来配置 RootLogger

    basicConfig 函数仅用来配置 RootLogger,rootLogger 是所有 Logger 的祖先 Logger,所以其他一切 Logger 会继承该 Logger

    basicConfig 源码看,它可以有六个关键字参数

    filename:执行使用该文件名为 rootLogger 创建 FileHandler,而不是 StreamHandler (将显示的日志放入该文件)
    filemode:指定文件打开方式,默认是"a"
    format:为 rootLogger 的 handler 指定输出格式
    datefmt:指定输出的日期时间格式
    level:设置 rootLogger 的日志级别

    import logging
    # 将日志写入当前目录的log.txt文件,设置为追加,设置级别为10,显示输出时间。
    logging.basicConfig( filename = './log.txt', filemode = 'a', #stream = sys.stdout,
     format = '%(levelnam
    e)s:%(message)s', datefmt = '%m/%d/%Y %I:%M:%S', level = logging.DEBUG )
    
    # 参数format
    logging.basicConfig(format='%(asctime)s%(levelname)s:%(message)s',datefmt='%m/%d/%Y %I:%M:%S %p')
    

    缺点 无法追踪脚本来源

    模块级记录器
    记录器对象上使用最广泛的方法分为两类:配置和消息发送。

    import logging
    # 生成logging对象, __name__监控者
    logger = logging.getLogger(__name__) 
    logger.setLevel(logging.DEBUG)
    # 设置的日志基本也可以是数字的形式
    # logger.setLevel(10)
    # 设置生成日志文件
    fh = logging.FileHandler("access.log")
    fh.setLevel(logging.INFO)
    fh.setFormatter(formatter)    #文件
    # 创建日志输出格式
    fmt = "%(asctime)s %(levelname)s %(filename)s %(lineno)d %(process)d %(message)s"
    datefmt = "%a %d %b %Y %H:%M:%S"
    formatter = logging.Formatter(fmt, datefmt)
    
    

    相关文章

      网友评论

          本文标题:日志模块 logging

          本文链接:https://www.haomeiwen.com/subject/bgzsyctx.html