Python日志配置类

# -*- coding: utf-8 -*
"""日志工具类

author: Jill

usage:
    from common.logger import Log
    log = Log().get_logger()
    log.error("error occurred when xxx")
"""
import logging
import time
import os

cur_path = os.path.dirname(os.path.realpath(__file__))
log_path = os.path.join(os.path.dirname(cur_path), ‘logs‘)
# 如果不存在这个logs文件夹,就自动创建一个
if not os.path.exists(log_path):
    os.mkdir(log_path)

class Log(object):
    @staticmethod
    def get_logger():
        fmt = logging.Formatter(‘[%(asctime)s] [%(threadName)s] [%(levelname)s] [%(pathname)s:%(lineno)s]: %(message)s‘,
                                "%Y-%m-%d %H:%M:%S")
        console_handler = logging.StreamHandler()
        console_handler.setFormatter(fmt)
        log_name = os.path.join(log_path, ‘%s.log‘ % time.strftime(‘%Y_%m_%d‘))
        file_handler = logging.FileHandler(log_name, ‘a‘, encoding=‘utf-8‘)  # 这个是python3的
        file_handler.setFormatter(fmt)
        logger = logging.getLogger(‘App‘)
        logger.setLevel(logging.DEBUG)
        if logger.handlers:
            return logger
        logger.addHandler(console_handler)
        logger.addHandler(file_handler)
        return logger

if __name__ == "__main__":
    log2 = Log.get_logger()
    log = Log.get_logger()
    log2.info(‘test‘)
    log.info(‘test‘)
    log2.error(‘test‘)
    log.warning(‘test‘)
    log.debug(‘test‘)

原文地址:https://www.cnblogs.com/goingforward/p/9887288.html

时间: 2024-10-09 08:06:33

Python日志配置类的相关文章

python日志配置_byseyOrd

python的几种配置方式 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数: 2)创建一个日志配置文件,然后使用fileConfig()函数来读取该文件的内容: 3)创建一个包含配置信息的dict,然后把它传递个dictConfig()函数: 需要说明的是,logging.basicConfig()也属于第一种方式,它只是对loggers, handlers和formatters的配置函数进行了封装. 第二种配置方式相对于第一种

python日志配置的几种方式

通过简单方式进行配置,使用basicConfig()函数直接进行配置: 通过配置文件进行配置,使用fileConfig()函数读取配置文件: 通过配置字典进行配置,使用dictConfig()函数读取配置信息: 通过网络进行配置,使用listen()函数进行网络配置. 原文地址:https://www.cnblogs.com/wind666/p/10742556.html

【转】python之配置日志的几种方式

[转]python之配置日志的几种方式 作为开发者,我们可以通过以下3种方式来配置logging: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数: 2)创建一个日志配置文件,然后使用fileConfig()函数来读取该文件的内容: 3)创建一个包含配置信息的dict,然后把它传递个dictConfig()函数: 需要说明的是,logging.basicConfig()也属于第一种方式,它只是对loggers, handlers

【python日志之logging模块--理解】

一.简介logging模块是python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件和回滚等:可以说,logging模块主要由4部分组成:    *Logger 记录器,提供了应用程序代码能直接使用的接口    *Handler 处理器,将记录器产生的日志记录发送至合适的目的地,或者说将Logger产生的日志传到指定位置    *Filters 过滤器,对输出的日志进行过滤,它可以决定输出哪些日志记录    *Formatter 格式化器,控制日志输出的格

python日志处理

本节内容 1. 日志相关概念 2. logging模块简介 3. 使用logging提供的模块级别的函数记录日志 4. logging模块日志流处理流程 5. 使用logging四大组件记录日志 6. 配置logging的几种方式 7. 向日志输出中添加上下文信息 8. 参考文档 主要内容 一.日志相关概念 日志是一种可以追踪某些软件运行时所发生事件的方法.软件开发人员可以向他们的代码中调用日志记录相关的方法来表明发生了某些事情.一个事件可以用一个可包含可选变量数据的消息来描述.此外,事件也有重

MyBatis应用开发(6)日志之日志配置

1. 日志 1.1. 日志配置 MyBatis的总体配置文件中可以通过setting配置所采用的日志输出途径,也可以配置为不输出日志. logImpl:配置MyBatis使用的日志实现方式.可以选的方式:SLF4J.LOG4J.LOG4J2.JDK_LOGGING.COMMONS_LOGGING.STDOUT_LOGGING.NO_LOGGING.也可以是实现了org.apache.ibatis.logging.Log接口的类的全限定名. <configuration> <!-- 配置参

python logging 配置

在python中,logging由logger,handler,filter,formater四个部分组成,logger是提供我们记录日志的方法:handler是让我们选择日志的输出地方,如:控制台,文件,邮件发送等,一个logger添加多个handler:filter是给用户提供更加细粒度的控制日志的输出内容:formater用户格式化输出日志的信息.python中配置logging有三种方式第一种:基础配置,logging.basicConfig(filename="config.log&q

Tomcat日志配置

1.Log4j日志配置 ①log4j代替tomcat自身的log 如果想用log4j来详细的打印出 tomcat的log,用下面的方法可以做到首先,将common-logging和log4j的包放入tomat/common/lib下然后将log4j.properties文件放入tomcat/common/classes下 ②根据日志不同级别,进行配置输出 配置文件: ### set log levels ###log4j.rootLogger = debug ,  stdout ,  D , 

django 1.8 日志配置

以下为setings配置logging代码片段 BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) LOGDIR = os.path.join(BASE_DIR, "logs") LOGFILE = datetime.datetime.now().strftime("%Y-%m-%d") + ".log" if not os.path.exists(LOGD