1. 程式人生 > >python可以分開檔案記錄日誌的類

python可以分開檔案記錄日誌的類

#!/usr/bin/python
#coding=utf-8

import logging
import sys
import os

class Logger:
    def __init__(self, logName, logFile):
        self._logger = logging.getLogger(logName)

        log_dir = "./log"
        if os.path.exists(log_dir) == False:
            os.mkdir(log_dir)

        log_filename = log_dir+'/'+logFile

        handler = logging.FileHandler(log_filename)
        formatter = logging.Formatter('%(asctime)s %(funcName)s [line:%(lineno)d]  %(levelno)s %(levelname)s  threadID:%(thread)d threadName:%(threadName)s msg:%(message)s')
        handler.setFormatter(formatter)
        self._logger.addHandler(handler)
        self._logger.setLevel(logging.INFO)

    def info(self, msg):
        if self._logger is not None:
            self._logger.info(msg)

這個類的建構函式,logName是日誌物件名稱,logFile是日誌檔名稱。

而且檔案是記錄在當前目錄的LOG資料夾下的。

備註:如果有需要,logFile是一個全路徑。