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("----测试结束----")
  • 相关阅读:
    面试题33:把数组排成最小的数
    面试题32:从1到n整数中1出现的次数
    面试题31:连续子数组的最大和
    HTTPS 及加密信息全解析
    面试题30:最小的k个数
    linux退出vi
    linux清除当前屏幕
    java web开发环境配置
    jQuery积累
    html5离线应用详摘
  • 原文地址:https://www.cnblogs.com/NiceTime/p/10070117.html
Copyright © 2011-2022 走看看