日志可以分多个级别,打印到控制台或者文件,文件可以按天分割存储。
{
"LOG": {
"console": true,
"level": "DEBUG",
"path": "/var/log/servers/aioquant",
"name": "quant.log",
"clear": true,
"backup_count": 5
}
}
参数说明:
- console
boolean
是否打印到控制台,true 打印到控制台
/false 打印到文件
,可选,默认为true
- level
string
日志打印级别DEBUG
/INFO
,可选,默认为DEBUG
- path
string
日志存储路径,可选,默认为/var/log/servers/aioquant
- name
string
日志文件名,可选,默认为quant.log
- clear
boolean
初始化的时候,是否清理之前的日志文件,true 清理
/false 不清理
,可选,默认为false
- backup_count
int
保存按天分割的日志文件个数,默认0为永久保存所有日志文件,可选,默认为0
配置文件可参考 服务配置模块;
from aioquant.utils import logger
logger.debug("a:", 1, "b:", 2)
logger.info("start strategy success!", caller=self) # 假设在某个类函数下调用,可以打印类名和函数名
logger.warn("something may notice to me ...")
logger.error("ERROR: server down!")
logger.exception("something wrong!")
def info(*args, **kwargs):
def warn(*args, **kwargs):
def debug(*args, **kwargs):
def error(*args, **kwargs):
def exception(*args, **kwargs):
注意:
- 所有函数的
args
和kwargs
可以传入任意值,将会按照python的输出格式打印; - 在
kwargs
中指定caller=self
或caller=cls
,可以在日志中打印出类名及函数名信息;