zoukankan      html  css  js  c++  java
  • python3基础10(操作日志)

    #!/usr/bin/env python
    # -*- coding:UTF-8 -*-

    import logging, time, os

    # 这个是日志保存本地的路径
    log_path = "D:\ideaSpace\autoProject\autotest\nicetime"

    class Log:
    def __init__(self):
    # 文件的命名
    self.logname = os.path.join(log_path,'%s.log'%time.strftime('%Y_%m_%d'))
    self.logger = logging.getLogger()

    # 日志输出格式
    self.formatter = logging.Formatter('[%(asctime)s]- %(filename)s] - %(levelname)s: %(message)s')

    def __console(self, level, message):
    # 创建一个 FileHandler,用于写到本地
    fh = logging.FileHandler(self.logname, 'a', encoding='utf-8')
    fh.setLevel(self.level)
    fh.setFormatter(self.formatter)
    self.logger.addHandler(fh)

    # 创建一个 StreamHandler,用于输出到控制台
    # ch = logging.StreamHandler()
    # ch.setLevel(self.level)
    # ch.setFormatter(self.formatter)
    # self.logger.addHandler(ch)

    if level == 'info':
    self.logger.info(message)
    elif level == 'debug':
    self.logger.debug(message)
    elif level == 'warning':
    self.logger.warning(message)
    elif level == 'error':
    self.logger.error(message)

    # 这两行代码是为了避免日志输出重复问题
    # self.logger.removeHandler(ch)
    self.logger.removeHandler(fh)

    # 关闭打开的文件
    fh.close()

    def debug(self, message):
    self.level = logging.getLevelName(logging.DEBUG)
    self.__console('debug', message)

    def info(self, message):
    self.level = logging.getLevelName(logging.INFO)
    self.__console('info', message)

    def warning(self, message):
    self.level = logging.getLevelName(logging.WARNING)
    self.__console('warning', message)

    def error(self, message):
    self.level = logging.getLevelName(logging.ERROR)
    self.__console('error', message)


    if __name__ == "__main__":
    log = Log()
    log.info("---测试开始----")
    log.info("输入密码")
    log.warning("----测试结束----")
  • 相关阅读:
    对生产稳定的一些思考
    tsar指标解释
    tsar采集nginx指标
    Nginx如何处理一个连接
    Java : 如何更优雅的设计异常
    MySql的索引实现
    IntelliJ Idea 常用配置
    ICSharpCode.SharpZipLib.dll 压缩、解压Zip文件 附源码
    Java BigDecimal使用
    社交系统中用户好友关系数据库设计
  • 原文地址:https://www.cnblogs.com/NiceTime/p/10070117.html
Copyright © 2011-2022 走看看