0

我想知道云函数是否有限制将 python 日志从谷歌云平台导出到长消息(超过 1500 个字符)。

以下是Papertrail中关于如何从 Python 发送日志消息的多个示例,但我尝试过的示例在下面,它可以在 Google Compute Engine 上向 Papertrail 发送消息,但在 Google Cloud Functions 上不起作用。Google Cloud Function 将它们记录在 Google Cloud Operation Logging Service 中。

import logging
import socket
from logging.handlers import SysLogHandler

class ContextFilter(logging.Filter):
    hostname = socket.gethostname()

    def filter(self, record):
        record.hostname = ContextFilter.hostname
        return True

syslog = SysLogHandler(address=('logsN.papertrailapp.com', XXXXX))
syslog.addFilter(ContextFilter())

format = '%(asctime)s %(hostname)s YOUR_APP: %(message)s'
formatter = logging.Formatter(format, datefmt='%b %d %H:%M:%S')
syslog.setFormatter(formatter)

logger = logging.getLogger()
logger.addHandler(syslog)
logger.setLevel(logging.INFO)

logger.info("This is a message")

特别是,对于上面的代码,如果我传递的消息太长,我在处理程序上放置的地址似乎在 Google Cloud Function 中不起作用。

syslog = SysLogHandler(address=('logsN.papertrailapp.com', XXXXX))

这是正常的还是我的云功能有问题?有没有一种方法可以在 Google Cloud Functions 中的 python 日志记录中传递一个地址,该地址可以兼容长消息?

4

0 回答 0