我是python和Django的新手。每当代码中断并且我配置了一些设置时,我正在尝试将日志错误发送到我的Gmail。这是我项目的结构:
MyProject:
-App1:
....
views.py
-App2:
....
urls.py
settings.py
我想将所有邮件记录到我的Gmail中。然后我在settings.py中设置了以下记录器:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'verbose': {
'format' : "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s",
'datefmt' : "%d/%b/%Y %H:%M:%S"
},
'simple': {
'format': '%(levelname)s %(message)s'
},
},
'handlers': {
'file': {
'level': 'WARNING',
'class': 'logging.FileHandler',
'filename': '_temp/logs/app.log',
'formatter': 'verbose'
},
'mail_admins':{
'level':'ERROR',
'class': 'django.utils.log.AdminEmailHandler',
'include_html': True,
}
},
'loggers': {
'django': {
'handlers':['file'],
'propagate': True,
'level':'WARNING',
},
'_main': {
'handlers': ['file'],
'level': 'WARNING',
},
'apps.orders':{
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate':False,
},
'apps.account':{
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate':False,
},
'apps.vegetables':{
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate':False,
},
'apps.utils':{
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate':False,
},
'apps.rating':{
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate':False,
}
}
}
以下是我的settings.dev文件中的其他设置
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = 'test@gmail.com'
EMAIL_HOST_PASSWORD = 'password'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
SEND_BROKEN_LINK_EMAILS = True
ADMINS = (
('Administrator', 'navajyothms1989@gmail.com'),
('Administrator2','arunghosh@gmail.com'),
)
MANAGERS = ADMINS
DEBUG = False
有没有办法让错误日志进入电子邮件?