【问题标题】:log to specific logstream in cloudwatch from lambda从 lambda 记录到 cloudwatch 中的特定日志流
【发布时间】:2017-01-05 20:14:51
【问题描述】:

我想从 lambda 记录到特定的 CloudWatch 日志流。

目前,每个 lambda 都会将日志触发到一个唯一命名的日志流,并且通常会根据需要创建一个新的日志流。如果我同时触发 10 个 lambdas 并处理不同的事件并希望查看给定事件类型的特定日志流(我可以预先假设定义),这将是有问题的。

我希望能够在控制台中创建一个日志流,并指定从我的 lambda(python 代码)中记录到该特定日志流,最好不要求助于 boto3 模块(尽管这很好如果这是唯一的方法,当然)。

【问题讨论】:

  • 尝试执行此操作不会有太多运气,因为即使您手动调用 AWS.CloudWatchLogs.pushLogEvents() 将日志从您的 Lambda 函数 you're limited to 5 requests/second/log-stream 发送到特定日志流。这正是 Lambda 自动为您创建多个日志流而不是为每个 Lambda 函数写入单个日志流的原因。
  • 如果您想在日志上拥有一些搜索功能,请将其通过管道传输到弹性搜索集群。效果很好。
  • @johni,有什么理由不直接从我的 lambda 登录到弹性搜索而不是通过 cloudwatch?
  • 是的。一个 lambda 函数应该做最少的必要 IO 操作,并且做它应该做的事情。因此,对于日志记录,您只需在 lambda 中使用 console.log,因为 AWS 负责其余的工作。
  • 嗯 - 为什么不使用显示在给定日志组的所有流上方的“搜索日志组”选项?这将显示跨流的聚合活动(您可以搜索。)

标签: amazon-web-services aws-lambda


【解决方案1】:

这是来自@scolestock 的评论...它不能准确回答问题(我希望我能找到),但它是一个很好的选择,对我有帮助。

使用显示在给定日志组的所有流上方的“搜索日志组”选项?这将显示跨流的聚合活动(您可以搜索。)

这基本上就是我所需要的...查看所有流中的所有日志。

【讨论】:

    猜你喜欢
    • 2018-02-16
    • 2017-07-05
    • 1970-01-01
    • 2020-06-25
    • 2018-05-06
    • 2020-10-23
    • 1970-01-01
    • 2019-01-23
    • 2018-01-07
    相关资源
    最近更新 更多