通过 HTML 模板格式化日志
format the logs by an HTML template
我正在检索 cloudwatch 日志,然后将其放入记录器文件中,然后使用 Amazon SES 通过邮件发送它们。我想要一种在发送之前格式化记录器的文件处理程序的方法。我真的很想收到一封带有颜色和栏目的可读性很好的电子邮件...
logLevel = logging.INFO
logger1.setLevel(logLevel)
formatter = logging.Formatter(' :: %(levelname)s :: %(message)s')
fileHandler = os.path.join('/tmp/', 'error-logs.log')
fh = logging.handlers.RotatingFileHandler(fileHandler, maxBytes=0, backupCount=0)
fh.setLevel(logLevel)
fh.setFormatter(formatter)
logger1.addHandler(fh)
这是我填充记录器的方式:
output = []
output.append(event['message'])
logger1.info(' | '.join(output))
用logger填充文件后,我这样发送邮件:
for file in sorted(glob.glob(filehandler + '*'), key=os.path.getmtime):
body = open(file, 'r').read()
subject = objet+" %s" % (today.strftime("%Y-%m-%d"))
for email in emailarg.split(','):
response = ses.send_email(
Source = email,
Destination={
'ToAddresses': [
email,
],
},
Message={
'Subject': {
'Data': subject
},
'Body': {
'Text': {
'Data': body
},
}
}
)
os.remove(file)
您有什么方法可以使用 HTML 很好地格式化日志文件(文本)吗?
我通过以下方式解决了这个问题:
- 将 HTML 个标签放入输出列表(使用 table 个标签)
- 使用 HTML 作为 AWS SES 正文的消息格式,如下所示:
response = ses.send_email(
Source = email,
Destination={
'ToAddresses': [
email,
],
},
Message={
'Subject': {
'Data': subject
},
'Body': {
'Html': {
'Data': body
},
}
}
)
我正在检索 cloudwatch 日志,然后将其放入记录器文件中,然后使用 Amazon SES 通过邮件发送它们。我想要一种在发送之前格式化记录器的文件处理程序的方法。我真的很想收到一封带有颜色和栏目的可读性很好的电子邮件...
logLevel = logging.INFO
logger1.setLevel(logLevel)
formatter = logging.Formatter(' :: %(levelname)s :: %(message)s')
fileHandler = os.path.join('/tmp/', 'error-logs.log')
fh = logging.handlers.RotatingFileHandler(fileHandler, maxBytes=0, backupCount=0)
fh.setLevel(logLevel)
fh.setFormatter(formatter)
logger1.addHandler(fh)
这是我填充记录器的方式:
output = []
output.append(event['message'])
logger1.info(' | '.join(output))
用logger填充文件后,我这样发送邮件:
for file in sorted(glob.glob(filehandler + '*'), key=os.path.getmtime):
body = open(file, 'r').read()
subject = objet+" %s" % (today.strftime("%Y-%m-%d"))
for email in emailarg.split(','):
response = ses.send_email(
Source = email,
Destination={
'ToAddresses': [
email,
],
},
Message={
'Subject': {
'Data': subject
},
'Body': {
'Text': {
'Data': body
},
}
}
)
os.remove(file)
您有什么方法可以使用 HTML 很好地格式化日志文件(文本)吗?
我通过以下方式解决了这个问题:
- 将 HTML 个标签放入输出列表(使用 table 个标签)
- 使用 HTML 作为 AWS SES 正文的消息格式,如下所示:
response = ses.send_email( Source = email, Destination={ 'ToAddresses': [ email, ], }, Message={ 'Subject': { 'Data': subject }, 'Body': { 'Html': { 'Data': body }, } } )