我有一個python腳本,可以執行多項操作並在控制檯上打印日誌。現在,我還沒有使用任何日誌記錄機制(我只是使用print
打印了所需的信息)。如何將所有打印件作爲電子郵件發送出去?我必須將它全部保存在一個變量中,並將它傳遞給smtplib?或者,還有更好的方法?從腳本內部發送python控制檯輸出爲電子郵件的最佳方式是什麼?
示例代碼
for job in fetch.getJobStats():
if job['userName']+"_"+job['tenantId'] in summaryTotal:
summary = summaryTotal[job['userName']+"_"+job['tenantId']]
else:
summary = Summary(job['userName'], job['tenantId'])
summaryTotal[summary.user+"_"+summary.tenant] = summary
summary.jobs.append(Job(job['jobId'], job['jobStatus'], int(job['fileSize'])))
totalBw += int(job['fileSize'])
print("Cumulative Size: " + str(totalBw))
for summaryKey in summaryTotal.keys():
summary = summaryTotal[summaryKey]
inprogress = []
failed = []
completed = []
cancelled = []
totalBwTenantUser = 0
for job in summary.jobs:
totalBwTenantUser += job.filesize
if job.status == "JOBCANCELLED":
cancelled.append(job.id)
elif job.status == "JOBCOMPLETED":
completed.append(job.id)
elif job.status == "INPROGRESS":
completed.append(job.id)
elif job.status == "JOBFAILED":
completed.append(job.id)
print("-" * 50)
print("Tenant: " + summary.tenant)
print("User : " + summary.user)
print("Size : " + str(totalBwTenantUser))
print("\n")
print("INPROGRESS: " + str(inprogress))
print("COMPLETED : " + str(completed))
print("CANCELLED : " + str(cancelled))
print("FAILED : " + str(failed))
print("-" * 50)
所有印刷品應該出手了一封電子郵件。
請發佈您的代碼和您保存它們的方式,並且有人可以幫助您發送電子郵件 – MohitC