zoukankan      html  css  js  c++  java
  • python--loggger日志到理解logging

    日志记录器级别:严重、错误、警告、信息、调试

    logger模块用于记录log信息,使用前请导包import logger。

    例一、

    1、超级简单版logger.py:

    def log_message(msg):
        with open("test.log",'a+') as log_file:
            log_file.write("{0}
    ".format(msg))

    2、新建一个main_script.py文件引入logger.py日志记录器

    import logger
    
    for i in range(4):
        logger.log_message("log message {}".format(i))

    3、运行后生成日志,没有日志级别的日志不是好日志,日志信息如下:

    log message 0
    log message 1
    log message 2
    log message 3
    test.log

    4、logger.py文件修改

    def critical(msg):
        with open("test.log",'a+') as log_file:
            log_file.write("[CRITICAL]{0}
    ".format(msg))
    
    def error(msg):
        with open("test.log",'a+') as log_file:
            log_file.write("[ERROR]{0}
    ".format(msg))
            
    def warn(msg):
        with open("test.log",'a+') as log_file:
            log_file.write("[WARN]{0}
    ".format(msg))
    
    def info(msg):
        with open("test.log",'a+') as log_file:
            log_file.write("[INFO]{0}
    ".format(msg))
            
    def debug(msg):
        with open("test.log",'a+') as log_file:
            log_file.write("[DEBUG]{0}
    ".format(msg))
    logger.py

    5、新建一个py文件,test_error_log.py

    import logger
    
    try:
        a = 1/0
    except:
        logger.error("something went wront")
    View Code

    6、运行test_error_log.py程序后查看log日志,

    [ERROR]something went wron

    7、logging第三方模块pip安装后可以这样用

    import logging  # 引入logging模块
    import os.path
    import time
    # 第一步,创建一个logger
    logger = logging.getLogger()
    logger.setLevel(logging.INFO)  # Log等级总开关
    # 第二步,创建一个handler,用于写入日志文件
    rq = time.strftime('%Y%m%d%H%M', time.localtime(time.time()))
    log_path = os.path.dirname(os.getcwd()) + '/Logs/'
    log_name = log_path + rq + '.log'
    logfile = log_name
    fh = logging.FileHandler(logfile, mode='w')
    fh.setLevel(logging.DEBUG)  # 输出到file的log等级的开关
    # 第三步,定义handler的输出格式
    formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s")
    fh.setFormatter(formatter)
    # 第四步,将logger添加到handler里面
    logger.addHandler(fh)
    # 日志
    logger.debug('this is a logger debug message')
    logger.info('this is a logger info message')
    logger.warning('this is a logger warning message')
    logger.error('this is a logger error message')
    logger.critical('this is a logger critical message')
    test_loggin.py
    逆风的方向更适合飞翔,不怕千万人阻挡,只怕自己投降!
  • 相关阅读:
    Linux Centos7之由Python2升级到Python3教程
    10张图带你深入理解Docker容器和镜像
    Centos7 添加用户及设置权限
    OpenCV 和 Dlib 人脸识别基础
    python unittest 源码学习
    Markdown 模板
    python Django ORM相关
    java的介绍
    java反射
    代理模式
  • 原文地址:https://www.cnblogs.com/jackzz/p/9270265.html
Copyright © 2011-2022 走看看