2017-06-02 59 views
0

我有一段代碼可以在我的python應用程序中正常運行。當芹菜工人運行這個代碼時,它沒有這樣做。下面是代碼塊:芹菜工不同運行嗎?

def send_case_complete_email(owner_name, case_name, email): 
    try: 
     with open("utility/email/buildCompleteEmail.txt", 'rb') as email_file: 
      text = email_file.read().decode("utf-8") 
     text = text.replace("<owner>", owner_name).replace("<caseName>", case_name) 
     msg = MIMEText(text) 
     msg['Subject'] = "Case \'" + case_name + "\' is ready" 
     msg['From'] = config_access.app_configs['email']['from'] 
     msg['To'] = email 
     server = smtplib.SMTP(config_access.app_configs['email']['host']) 
     if config_access.app_configs['email']['tls']: 
      server.starttls() 
     server.login(config_access.app_configs['email']['user'], config_access.app_configs['email']['password']) 
     server.sendmail(config_access.app_configs['email']['from'], email, msg.as_string()) 
     print("Case completion email sent to " + email) 
    except Exception as e: 
     print(e) 

與芹菜工人的錯誤:

[2017-06-02 15:07:19,031: WARNING/PoolWorker-1] (500, b"5.3.3 Unrecognized command 'bm8ucmVwbHlAcGx1cmlsb2NrLmNvbQ==' [BN3PR03CA0080.namprd03.prod.outlook.com]") 

爲什麼會出現這種情況?

+0

你爲什麼在這裏使用try-catch塊?如果你沒有發現異常,你會得到一個完整的追溯,而不僅僅是一個神祕的錯誤信息。 –

+0

芹菜工人通常像其他一些用戶一樣運行。 'sys.path'可能與預期不同。看起來芹菜工作人員可能無法訪問您用來發送電子郵件的SMTP服務。 –

+0

「以其他用戶身份運行」如何找出此信息? – OrangePot

回答

0

您發佈的消息只是一條警告消息。你確定這裏的錯誤來自這段代碼。你可以在這裏使用日誌。 Python Logging

或者如果您使用的是Django,那麼Django Logging 。您可以使用logger.exception來獲得完整的堆棧跟蹤。這應該告訴你錯誤來自哪裏。