1、在setting.py里增加需要的日志配置
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'standard': {
'format': '%(asctime)s - %(name)s - %(levelname)s - %(message)s',
'datefmt': '%Y-%m-%d %H:%M:%S'
},
'simple': {
'format': '[%(levelname)s]> %(message)s',
'datefmt': '%Y-%m-%d %H:%M:%S'
},
},
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'standard'
},
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': 'logs/{}.logs'.format(time.strftime("%Y-%m-%d",time.localtime())),
'formatter': 'standard',
'encoding': 'utf-8'
},
'rfile': {
'level': 'DEBUG',
'class': 'logging.handlers.TimedRotatingFileHandler',
'filename': 'log.log',
'formatter': 'standard',
'encoding': 'utf-8'
},
},
'loggers': {
'django': {
'handlers': ['console','file','rfile'],
'level': 'DEBUG',
'propagate': False,
},
},
}
2、在视图里增加引用代码
logger=logging.getLogger('django')
def index(request:HttpRequest):
logger.info("{} - {} - {} ".format(web.lib.get_real_ip(request),request.path,"hello"))
return HttpResponse("hello")
3、增加lib.py
def get_real_ip(request):
ip = "127.0.0.1"
if "HTTP_X_FORWARDED_FOR" in request.META.keys():
ip = request.META['HTTP_X_FORWARDED_FOR']
elif "X_FORWARDED_FOR" in request.META.keys():
ip = request.META['X_FORWARDED_FOR']
elif "REMOTE_ADDR" in request.META.keys():
ip = request.META["REMOTE_ADDR"]
else:
ip = "127.0.0.1"
return ip