add more logging
This commit is contained in:
parent
40b6fde2c3
commit
bf75f8e8ab
|
@ -2024,7 +2024,7 @@ def should_ignore(mail_from: str, rcpt_tos: List[str]) -> bool:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
def handle(envelope: Envelope) -> str:
|
def handle(envelope: Envelope, msg: Message) -> str:
|
||||||
"""Return SMTP status"""
|
"""Return SMTP status"""
|
||||||
|
|
||||||
# sanitize mail_from, rcpt_tos
|
# sanitize mail_from, rcpt_tos
|
||||||
|
@ -2033,7 +2033,6 @@ def handle(envelope: Envelope) -> str:
|
||||||
envelope.mail_from = mail_from
|
envelope.mail_from = mail_from
|
||||||
envelope.rcpt_tos = rcpt_tos
|
envelope.rcpt_tos = rcpt_tos
|
||||||
|
|
||||||
msg = email.message_from_bytes(envelope.original_content)
|
|
||||||
postfix_queue_id = get_queue_id(msg)
|
postfix_queue_id = get_queue_id(msg)
|
||||||
if postfix_queue_id:
|
if postfix_queue_id:
|
||||||
set_message_id(postfix_queue_id)
|
set_message_id(postfix_queue_id)
|
||||||
|
@ -2347,18 +2346,22 @@ def handle_out_of_office_forward_phase(email_log, envelope, msg, rcpt_tos):
|
||||||
class MailHandler:
|
class MailHandler:
|
||||||
async def handle_DATA(self, server, session, envelope: Envelope):
|
async def handle_DATA(self, server, session, envelope: Envelope):
|
||||||
try:
|
try:
|
||||||
ret = self._handle(envelope)
|
msg = email.message_from_bytes(envelope.original_content)
|
||||||
|
ret = self._handle(envelope, msg)
|
||||||
return ret
|
return ret
|
||||||
except Exception:
|
except Exception:
|
||||||
LOG.e(
|
LOG.e(
|
||||||
"email handling fail %s -> %s",
|
"email handling fail mail_from:%s, rcpt_tos:%s, header_from:%s, header_to:%s, saved to %s",
|
||||||
envelope.mail_from,
|
envelope.mail_from,
|
||||||
envelope.rcpt_tos,
|
envelope.rcpt_tos,
|
||||||
|
msg[headers.FROM],
|
||||||
|
msg[headers.TO],
|
||||||
|
save_email_for_debugging(msg), # todo: remove
|
||||||
)
|
)
|
||||||
return status.E404
|
return status.E404
|
||||||
|
|
||||||
@newrelic.agent.background_task()
|
@newrelic.agent.background_task()
|
||||||
def _handle(self, envelope: Envelope):
|
def _handle(self, envelope: Envelope, msg: Message):
|
||||||
start = time.time()
|
start = time.time()
|
||||||
|
|
||||||
# generate a different message_id to keep track of an email lifecycle
|
# generate a different message_id to keep track of an email lifecycle
|
||||||
|
@ -2373,7 +2376,7 @@ class MailHandler:
|
||||||
)
|
)
|
||||||
|
|
||||||
with create_light_app().app_context():
|
with create_light_app().app_context():
|
||||||
ret = handle(envelope)
|
ret = handle(envelope, msg)
|
||||||
elapsed = time.time() - start
|
elapsed = time.time() - start
|
||||||
|
|
||||||
# use error log if taking more than 1 minute
|
# use error log if taking more than 1 minute
|
||||||
|
|
Loading…
Reference in a new issue