Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 通过HTML模板格式化日志_Python_Html_Amazon Web Services_Amazon Cloudwatch_Amazon Ses - Fatal编程技术网

Python 通过HTML模板格式化日志

Python 通过HTML模板格式化日志,python,html,amazon-web-services,amazon-cloudwatch,amazon-ses,Python,Html,Amazon Web Services,Amazon Cloudwatch,Amazon Ses,我正在检索cloudwatch日志,然后将其放入日志文件中,然后使用AmazonSES通过邮件发送它们。我想要一种在发送日志之前格式化日志文件处理程序的方法。我真的很想有一个很好的颜色和列可读的电子邮件 logLevel = logging.INFO logger1.setLevel(logLevel) formatter = logging.Formatter(' :: %(levelname)s :: %(message)s') fileHandler = os.path.join('/tm

我正在检索cloudwatch日志,然后将其放入日志文件中,然后使用AmazonSES通过邮件发送它们。我想要一种在发送日志之前格式化日志文件处理程序的方法。我真的很想有一个很好的颜色和列可读的电子邮件

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标记放入输出列表(使用表标记)
  • 使用HTML作为AWS SES正文的消息格式,如下所示:
response = ses.send_email(
                          Source = email,
                          Destination={
                              'ToAddresses': [
                                  email,
                              ],
                          },
                          Message={
                              'Subject': {
                                  'Data': subject
                              },
                              'Body': {
                                  'Html': {
                                      'Data': body
                                  },
                              }
                          }
                      )