ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python-保存日志信息

2022-07-14 13:04:47  阅读:203  来源: 互联网

标签:logging python 保存 mode str path 日志 save logger


import os
import logging


class Logger:
    def __init__(self, save_path: str, mode: str = 'w', logger_name: str = ''):
        assert mode == 'w' or mode == 'a', "The file mode must be 'w' or 'a': {}".format(mode)
        assert os.path.exists(os.path.dirname(save_path)), \
               'The folder does not exist: {}'.format(os.path.dirname(save_path))
        if mode == 'a':
            assert os.path.exists(save_path), 'The file does not exist: {}'.format(save_path)

        if logger_name == '':
            formatter_str = '%(asctime)s: %(message)s'
        else:
            formatter_str = '%(name)s %(asctime)s %(levelname)s: %(message)s'
        logging.basicConfig(
            format=formatter_str,
            level=logging.INFO,
            datefmt='%Y-%m-%d %H:%M:%S',
            filename=save_path,
            filemode=mode
        )
        console = logging.StreamHandler()
        console.setLevel(logging.INFO)
        formatter = logging.Formatter(formatter_str)
        console.setFormatter(formatter)
        self.logger = logging.getLogger(logger_name)
        self.logger.addHandler(console)

    def write(self, message: str):
        self.logger.info(message)

标签:logging,python,保存,mode,str,path,日志,save,logger
来源: https://www.cnblogs.com/ag-chen/p/16477289.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有