首页 > 解决方案 > 如何使用本地 Python 脚本读取实时 AWS Lambda 日志?

问题描述

我不想等待 14 秒来阅读 CloudWatch Lambda 日志。有没有办法在本地(VPC 外部)调用 shell 时实时读取它们?

  1. 调用异步
    result = lam.invoke(
        InvocationType='Event',
        FunctionName='my-lambda-func',
        Payload=json.dumps(dict(test='test'))
    )
  1. Lambda 将日志写入相关服务。
  2. 循环/等待实时结果在单独的外壳上是相同的。

标签: python-3.xamazon-web-servicesaws-lambda

解决方案


使用异步调用的一种常见方法是让您的 lambda 将结果发布到SQS 队列或 SNS 主题。通过这种方式,您可以在本地提取 SQS 队列以获得结果,或者设置 http 端点订阅,当 SNS 从 lambda 获取消息时,它将自动调用该端点订阅。

如果您只想关注CloudWatch 日志,那么您可以在日志上设置订阅过滤器,以实时处理来自 lambda 的传入日志事件。根据您的具体设置,您可以使用 Kinesis、firehose 或其他 lambda 来获取日志消息。


推荐阅读