2013-06-24 2 views
2

오류 전자 메일을 특수 전자 메일 계정으로 보내도록 장고를 구성하는 가장 쉬운 방법은 무엇입니까?장고의 오류 전자 메일에 별도의 전자 메일 계정 사용

오류가있는 전자 메일의 docs에는 명시 적으로 언급하지 않습니다. 나도 다른 자격 증명을 조회하고 사용할 수있는 사용자 정의 email backend을 작성하는 방법을 알고 있지만 EmailBackend._send 메소드는 메시지 만 수신하므로 메시지가 500 서버 오류에 대한 응답 일 때를 감지하는 방법을 모르겠습니다.

답변

4

로깅 설정을 사용하여 500 개의 오류를 관리자 전자 메일 ID에 메일로 보냅니다. 로깅 설정의

예 :

LOGGING = { 
    'version': 1, 
    'disable_existing_loggers': False, 
    'handlers': { 
     'mail_admins': { 
      'level': 'ERROR', 
      'class': 'django.utils.log.AdminEmailHandler', 
     } 
    }, 
    'loggers': { 
     'django.request': { 
      'handlers': ['mail_admins'], 
      'level': 'ERROR', 
      'propagate': True, 
     } 
    } 
} 

이 언급 된 이메일 ID로 장고의 모든 500 오류를 우편으로 보내드립니다.

참조 : Elegant setup of Python logging in Django

과 : 다른 SMTP 서버를 사용하려는 경우, 예외 미들웨어를 사용

https://docs.djangoproject.com/en/dev/topics/logging/#an-example

.

http://docs.djangoproject.com/en/dev/topics/http/middleware/#process-exception

process_exception 방법, 당신은 필요한 이메일 계정에 대한 예외의 역 추적을 이메일로 보낼 수 있습니다.

+0

특정 이메일 주소로 500 개의 오류를 보내려 고하지 않습니다. 그것은 분명히 문서화되어 있습니다. 완전히 다른 이메일 계정 자격 증명을 사용하고 싶습니다. 오류 전자 메일이 일반 전자 메일과 동일한 SMTP 서버를 통과하는 것을 원하지 않습니다. – Cerin

+0

@Cerin 제발 내 편집을 참조하십시오. – DhruvPathak

+0

큰 제안. 감사. – Cerin

관련 문제