1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- # -*- coding:utf-8 -*-
- """
- 注:私有变量和函数,前面加双下划线(不要在后面也加双下划线);
- """
- import os
- import sys
- import time
- # 使用inspect模块动态获取当前运行的函数名
- import inspect
- # 日期头文件;
- from datetime import datetime
- '''
- CBaseLog:日志基类
- inspect.stack()[0][3]:获取当前函数的名称;
- inspect.stack()[1][3]:获取当前函数的上一层函数的名称;
- inspect.stack()[2][3]:获取当前函数的上上一层函数的名称;
- '''
- class CBaseLog:
- def __init__(self):
- self.__enableDebug = True
- self.__enableInfo = True
- self.__enableWarn = True
- self.__enableError = True
- self.__enableLog = True
- # 如果有配置文件,加载;
- self.__loadConfig()
-
- def __loadConfig(self):
- pass
- def __printlog(self, msg):
- # 时间/内容;
- print("%s %s") % (datetime.now().strftime('%Y-%m-%d %H:%M:%S'), msg)
- def debug(self, msg):
- if self.__enableDebug:
- # 类型/类名:函数/内容
- log_str = "\033[32m【DEBUG】<%s::%s> %s \033[0m" % (self.__class__.__name__, inspect.stack()[1][3], msg)
- self.__printlog(log_str)
- def info(self, msg):
- if self.__enableInfo:
- # 类型/类名:函数/内容
- log_str = "\033[33m【INFO】<%s::%s> %s \033[0m" % (self.__class__.__name__, inspect.stack()[1][3], msg)
- self.__printlog(log_str)
- def warn(self, msg):
- if self.__enableWarn:
- # 类型/类名:函数/内容
- log_str = "\033[34m【WARN】<%s::%s> %s \033[0m" % (self.__class__.__name__, inspect.stack()[1][3], msg)
- self.__printlog(log_str)
- def error(self, msg):
- if self.__enableError:
- # 类型/类名:函数/内容
- log_str = "\033[31m【ERROR】<%s::%s> %s \033[0m" % (self.__class__.__name__, inspect.stack()[1][3], msg)
- self.__printlog(log_str)
- def log(self, msg):
- if self.__enableLog:
- # 类型/类名/内容
- log_str = "\033[35m【LOG】<%s::%s> %s \033[0m" % (self.__class__.__name__, inspect.stack()[1][3], msg)
- self.__printlog(log_str)
-
-
- if __name__ == "__main__":
- pass
|