【问题标题】:Removing specific log events from CloudWatchLogs从 CloudWatchLogs 中删除特定日志事件
【发布时间】:2020-01-16 22:01:43
【问题描述】:

我查看了the documentation of CloudWatch Logs,但找不到任何方法可以手动从log stream 中删除部分数据。

删除数据的唯一方法是:

  • 删除log stream,但这将删除所有数据(不仅仅是 我们要删除的数据)
  • 将保留策略设置为更短的时间 窗口,以便删除早于​​ X 时间的日志事件。 这也删除了比我们想要删除的更多内容。

有人有删除特定日志记录的经验吗?

【问题讨论】:

  • 你在找人告诉你有一个秘密的未记录的 API 调用吗?
  • 哈,那也不错。但是不,我想知道是否有人已经找到了解决方法(导出日志,删除需要删除的内容,然后将它们重新上传为新日志等)
  • 很遗憾,从今天开始,您无法从 CloudWatch 日志流中删除单个日志事件,替代方法是使用 Lambda 函数:设置 Lambda 函数触发器,过滤所有日志,然后将剩余日志写入一个新的日志组/流,然后删除原始日志流。本文档以 CloudTrail 事件为例:docs.aws.amazon.com/AmazonCloudWatch/latest/logs/…
  • 如果您解释为什么要删除日志记录,您将获得更好的(或任何)答案。复制会起作用,但不是很理想,如果你持续进行复制,效果最好(相对于“哎呀,我们在日志中写入了密码,让我们删除那些行”)。如果您的用例是后者,您最好使用 Elasticsearch 作为您的日志存储库,因为它可以让您选择和单独删除文档。(您可能对我写的关于如何设置的 this article 感兴趣基于 ES 的日志管道)。

标签: amazon-web-services amazon-cloudwatch amazon-cloudwatchlogs aws-cloudwatch-log-insights


【解决方案1】:

用户ronald8192的评论确实是事实:

很遗憾,从今天开始,您无法从 CloudWatch 日志流中删除单个日志事件,替代方法是使用 Lambda 函数:设置 Lambda 函数触发器,过滤所有日志,然后将剩余日志写入新日志组/流,然后删除原来的日志流。

【讨论】:

    猜你喜欢
    • 2013-06-25
    • 2021-12-10
    • 2020-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多