Нужна помощь в отправке сообщений об ошибках - PullRequest
1 голос
/ 01 октября 2019

Я не могу получить сообщения об ошибках по электронной почте. Он успешно зарегистрирован, но письмо не отправлено! Нет отслеживания или каких-либо других ошибок, просто если обнаружен код ошибки 500, он регистрирует его, но не отправляет администратору никаких писем!

Я пробовал много решений в Интернете, но ни односработало!

Вот часть моих настроек.py:

ADMINS = [('Prithvi', '<email1>')]


#Email Settings

MAILER_LIST = ['<email1>']
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = '<email2>' #EDITED
EMAIL_HOST_PASSWORD = '<password>'
EMAIL_USE_TLS = True
EMAIL_USE_SSL = False
EMAIL_USE_LOCALTIME = True
SERVER_EMAIL = '<email2>'
DEFAULT_FROM_EMAIL = '<email2>'

#Logger and Handler settings

# Python logging package
import logging

# Standard instance of a logger with __name__
stdlogger = logging.getLogger(__name__)

# Custom instance logging with explicit name
dbalogger = logging.getLogger('dba')

LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse',
        },
        'require_debug_true': {
            '()': 'django.utils.log.RequireDebugTrue',
        },
    },
    'formatters': {
        'simple': {
            'format': '[%(asctime)s] %(levelname)s %(message)s',
            'datefmt': '%Y-%m-%d %H:%M:%S'
        },
        'verbose': {
            'format': '[%(asctime)s] %(levelname)s [%(name)s.%(funcName)s:%(lineno)d] %(message)s',
            'datefmt': '%Y-%m-%d %H:%M:%S'
        },
    },
    'handlers': {
        'console': {
            'level': 'DEBUG',
            'filters': ['require_debug_true'],
            'class': 'logging.StreamHandler',
            'formatter': 'simple'
        },
        'development_logfile': {
            'level': 'DEBUG',
            'filters': ['require_debug_true'],
            'class': 'logging.FileHandler',
            'filename': r'C:/Users/Prithvi/Desktop/Prithvi/django/pd1/tmp/django_dev.log',###
            'formatter': 'verbose'
        },
        'production_logfile': {
            'level': 'ERROR',
            'filters': ['require_debug_false'],
            'class': 'logging.handlers.RotatingFileHandler',
            'filename': r'C:/Users/Prithvi/Desktop/Prithvi/django/pd1/var/log/django/django_production.log',###
            'maxBytes' : 1024*1024*100, # 100MB
            'backupCount' : 5,
            'formatter': 'simple'
        },
        'dba_logfile': {
            'level': 'DEBUG',
            'filters': ['require_debug_false','require_debug_true'],
            'class': 'logging.handlers.WatchedFileHandler',###
            'filename': r'C:/Users/Prithvi/Desktop/Prithvi/django/pd1/var/log/dba/django_dba.log',
            'formatter': 'simple'
        },
    },
    'root': {
        'level': 'DEBUG',
        'handlers': ['console'],
    },  
    'loggers': {
        'coffeehouse': {
            'handlers': ['development_logfile','production_logfile'],
         },
        'dba': {
            'handlers': ['dba_logfile'],
        },
        'django': {
            'handlers': ['development_logfile','production_logfile'],
        },
        'py.warnings': {
            'handlers': ['development_logfile'],
        },
    }
}

Хотелось бы знать, что является причиной этого, и в официальной документации по этой теме не так много информации по этой теме. либо мне в помощь!

Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 01 октября 2019

Эта часть вашего settings.py выглядит хорошо. Некоторое время назад я попробовал то же самое, но понял, что Gmail не позволяет вам легко отправлять электронные письма. Проверьте свой почтовый ящик Gmail, вы, должно быть, получили электронное письмо с сообщением «попытка была заблокирована». Это помечает ваше приложение как «недостаточно безопасное». Вы можете обратиться к другим поставщикам почтовых услуг, таким как zoho, и использовать вместо этого их SMTP-серверы. Надеюсь, это поможет !!

'handlers': {
    'mail_admins': {
        'level': 'ERROR',
        #'filters': ['require_debug_false'],
        'class': 'django.utils.log.AdminEmailHandler'
    },
 }

 'loggers': {
'django': {
    'handlers': ['file', 'console', 'mail_admins',],
    'propagate': True,
    'level': 'DEBUG',
},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...