1.setting配置
1.setting配置
if os.path.exists(os.path.join(BASE_DIR, 'logs')) is False:
os.mkdir(os.path.join(BASE_DIR, 'logs'))
# logs目录绝对路径
LOGS_ROOT = os.path.join(BASE_DIR, 'logs')
# 默认情况下,LOGGING设置与Django的默认logging配置进行合并
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'default': {
'format': '%(asctime)s %(levelname)s %(pathname)s %(filename)s %(funcName)s %(lineno)d %(message)s', #自定义输出格式
},
'simple': {
'format': '%(asctime)s {levelname} {message}',
},
},
'filters': {
},
'handlers': {
'console': {
'level': 'INFO',
'class': 'logging.StreamHandler',
'formatter': 'default'
},
'oa_handler': { #可为每个app设定一个handler
'level': 'INFO',
'class': 'logging.handlers.RotatingFileHandler',#输出到文件
'encoding':"utf-8",
'filename': os.path.join(LOGS_ROOT,'oa_truck.log'),#日志文件路径+文件名
'formatter': 'default'
}
},
'loggers': {
'app_oa_truck': { #可为每个app设定一个logger
'handlers': ['oa_handler'],#选定handler进行处理
'level': 'INFO',
'propagate': False,
}
}
}
2.在需要引入日志的views页面
import logging
log_truck = logging.getLogger("app_oa_truck")
log_truck.error(error)
或者在utils建一个log.py文件,将所有的log_app名命名,并且放在该py文件中,需要对应应用的log时,直接在需要的py文件中导入该log
例如:
utils -->log.py:
import logging
log_truck = logging.getLogger("app_oa_truck")
truck -->views.py
from utils.log import log_truck
#再使用log_truck