使用 L CloudWatch ogs Live Tai - Amazon CloudWatch 日志
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 L CloudWatch ogs Live Tai

CloudWatch Logs Live Tail 可在接收新日志事件时查看事件的流式列表,从而帮助您快速排除故障。您可以近乎实时地查看、筛选和突出显示提取的日志,帮助您快速检测并解决问题。您可以根据指定的术语筛选日志,也可以突出显示包含指定术语的日志,以帮助快速找到所需内容。

Live Tail 会话按会话使用时间每分钟产生费用。有关定价的更多信息,请参阅 Amazon CloudWatch Pric ing 中的 “日志” 选项卡。

仅标准日志类中的日志组支持 Live Tail。有关日志类的更多信息,请参阅 日志类

以下部分介绍了如何在控制台和 Amazon CLI中使用 Live Tail。您还可以通过编程方式启动 Live Tail 会话。有关更多信息,请参阅 StartLiveTail。有关 SDK 示例,请参阅使用 SD Amazon K 启动 Live Tail 会话

你也可以在中使用 Live Tail Amazon Toolkit for Visual Studio Code。要从 VS Code 命令面板启动 Live Tail 会话,请参阅 Amazon Toolkit for Visual Studio Code 用户指南的 Amazon L CloudWatch ogs Live Tail 部分

Live Tail 功能适用于所有商业 Amazon 区域。它在中国地区或 Amazon GovCloud (美国)地区不可用。

注意

StartLiveTailAPI streaming-logs.Region.amazonaws.com 使用 SDK 主机前缀注入将请求路由到。此 API 不支持 VPC 终端节点。

使用 Live Tail 开始直播会话 Amazon CLI

start-live-tail Amazon CLI 命令为终端中的一个或多个日志组启动 Live Tail 流式传输会话。Live Tail 会话最长可持续三个小时。如果每秒有超过 500 个日志事件与筛选条件匹配,则显示的日志事件是总日志事件的样本,以提供实时的跟踪体验。有关该start-live-tail命令的更多信息,请参见 start-live-tail

您可以在两种模式下使用 start-live-tail

  • print-only – 这是默认模式

  • interactive

print-only

print-only 模式下,日志事件在终端上流式传输。每秒都会在底部添加新事件,从而创建类似于 Linux 上的 tail -f 的近乎实时的跟踪体验。

要在 print-only 模式下启动 Live Tail 会话,请输入以下命令。

aws logs start-live-tail --log-group-identifiers arn:aws:logs:us-east-1:111111222222:log-group:my-logs

当使用 print-only 模式时,您还可以将其与其他 Linux 命令一起传输以增强其分析能力。以下示例使用 error 关键字筛选日志事件,并打印这些事件的第二列和第四列,以帮助您提取特定信息。

aws logs start-live-tail --log-group-identifiers arn:aws:logs:us-east-1:111111222222:log-group:my-logs --mode print-only | grep "error" | awk '{print $2, $4}'

interactive

interactive 模式下,您可以突出显示术语并在 JSON 和纯文本之间切换输出日志事件的格式。Interactive 模式还显示有关 Live Tail 会话的信息,例如会话持续时间、是否正在对会话进行采样、当前突出显示的术语和遇到这些术语的次数。

要在 interactive 模式下启动 Live Tail 会话,请输入以下命令。

aws logs start-live-tail --log-group-identifiers arn:aws:logs:us-east-1:111111222222:log-group:my-logs --mode interactive

Live Tail 会话开始。以下视频展示了示例会话的一部分。

一段简短的视频,展示了 Live Tail 会话期间屏幕上出现的日志事件。

要突出显示流日志中的某个术语,请按 h,然后输入该术语。下面显示了突出显示术语 latency 后的屏幕。

要清除突出显示的术语,请按 c,然后键入代表要停止突出显示的术语的数字。

您可以按 t 在 JSON 和纯文本之间切换传入事件的显示格式。此切换功能是尽力而为的,并且仅当日志事件格式兼容时才会发生。

您可以使用向上和向下箭头键滚动,并使用 CTRL+uCTRL+d 更快地滚动。

下图显示了 Live Tail 会话期间 latency 术语的突出显示。

交互式 Live Tail 会话的屏幕截图,屏幕上列出了日志事件并突出显示了出现的每个“延迟”。

在控制台中启动 Live Tail 会话

您可以使用 CloudWatch 控制台启动 Live Tail 会话。以下程序说明了如何使用左侧导航窗格中的 Live tail 选项启动 Live Tail 会话。您也可以从 “日志组” 页面或 “ CloudWatch 日志见解” 页面启动 Live Tail 会话。

如果您使用数据保护策略来屏蔽使用 Live Tail 查看的日志组中的敏感数据,则敏感数据在 Live Tail 会话中始终会被屏蔽。有关屏蔽日志组中敏感数据的详细信息,请参阅 通过屏蔽帮助保护敏感的日志数据

重要

如果您的网络安全团队不允许使用网络套接字,则您目前无法访问 CloudWatch 主机的 Live Tail 部分。你可以将 Live Tail 与 Amazon CLI 或一起使用 APIs。有关更多信息,请参阅使用 Live Tail 开始直播会话 Amazon CLIStartLiveTail

开始 Live Tail 会话
  1. 打开 CloudWatch 控制台,网址为https://console.aws.amazon.com/cloudwatch/

  2. 在导航窗格中,选择日志Live tail

  3. 对于选择日志组,在 Live Tail 会话中选择要从中查看事件的日志组。您可以选择多达 10 个日志组。

  4. (可选)如果您只选择了一个日志组,则可以通过选择一个或多个日志流来查看日志事件,从而进一步筛选 Live Tail 会话。为此,请在选择日志流中,从下拉列表选择日志流的名称。或者,您可以使用选择日志流下的第二个框输入日志流名称前缀,然后将选择名称与前缀匹配的所有日志流。

  5. (可选)要仅显示包含某些单词或其他字符串的日志事件,请在 Add filter patterns 中输入词或字符串。

    例如,要仅显示包含词 Warning 的日志事件,请输入 Warning。筛选字段不区分大小写。您可以在此字段中包含多个术语和模式运算符:

    • error 404 仅显示同时包含 error404 的日志事件

    • ?Error ?error 显示包含 Errorerror 的日志事件

    • -INFO 显示不包括 INFO 的所有日志事件

    • { $.eventType = "UpdateTrail" } 显示事件类型字段值为 UpdateTrail 的所有 JSON 日志事件

    您也可以使用正则表达式(regex)进行筛选:

    • %ERROR% 使用正则表达式显示由 ERROR 关键字组成的所有日志事件

    • { $.names = %Steve% } 使用正则表达式显示属性 "name" 中包含 Steve 的 JSON 日志事件

    • [ w1 = %abc%, w2 ] 使用正则表达式显示第一个单词是 abc 的空格分隔日志事件

    有关模式语法的更多信息,请参阅筛选条件和模式语法

  6. (可选)要突出显示的某些日志事件,请在 Live Tail 下输入要搜索并突出显示的字词。逐一输入突出显示的字词。如果添加多个要突出显示的字词,则会为每个字词分配不同的颜色。突出显示指示器显示在包含指定字词的任何日志事件的左侧;当您在主窗口中展开日志事件以查看完整的日志事件时,突出显示指示器也会出现在字词本身的下方。

    您可以搭配使用筛选和突出显示来快速排查问题。例如,您可以筛选事件以仅显示包含 Error 的事件,然后突出显示包含 404 的事件。

  7. 要启动会话,请选择应用筛选条件

    匹配的日志事件开始出现在窗口中。并将显示以下信息:

    • 计时器显示 Live Tail 会话处于活动状态的时间。

    • events/sec 显示每秒有多少提取的日志事件与您设置的筛选条件相匹配。

    • 为了防止会话因为许多事件与过滤器匹配而滚动得太快, CloudWatch 日志可能只显示一些匹配的事件。如果发生这种情况,屏幕上显示的匹配事件的百分比将以 % 已显示呈现。

  8. 要暂停事件流以查看当前显示的内容,请单击事件窗口中的任意位置。

  9. 在会话期间,您可以使用以下内容来查看有关每个日志事件的更多详细信息。

    • 要在主窗口中显示日志事件的完整文本,请选择该日志事件旁边的箭头。

    • 要在侧窗口中显示日志事件的完整文本,请选择该日志事件旁边的 + 放大镜。事件流暂停,侧窗口出现。

      在侧窗口中显示日志事件文本对于将其文本与主窗口中的其他事件进行比较很有用。

  10. 要停止 Live Tail 会话,请选择停止

  11. 要重新启动会话,可以选择使用筛选条件面板来修改筛选条件,然后选择应用筛选条件。然后选择 Start (开始)