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

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

使用中转网关流日志

您可以使用亚马逊 EC2、亚马逊 VPC 和亚马逊 S3 控制台处理 Transit Gateway 流日志。 CloudWatch

控制对流日志的使用

默认情况下, 用户无权使用流日志。您可以创建一个用户策略,该策略向用户授予创建、描述和删除流日志的权限。有关更多信息,请参阅 Amazon EC2 API 参考 中的向 IAM 用户授予针对 Amazon EC2 资源的必需权限

下面是一个示例策略,该策略向用户授予创建、描述和删除流日志的完全权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DeleteFlowLogs", "ec2:CreateFlowLogs", "ec2:DescribeFlowLogs" ], "Resource": "*" } ] }

还需要一些额外的 IAM 角色和权限配置,具体取决于您是发布到 CloudWatch 日志还是 Amazon S3。有关更多信息,请参阅 创建发布到日志的流 CloudWatch 日志创建发布到 Amazon S3 的流日志

创建流日志

您可以为传输网关创建流日志,以便将数据发布到 CloudWatch 日志、Amazon S3 或 Firehose。

有关更多信息,请参阅下列内容:

查看流日志

您可以在 Amazon VPC 控制台中,通过查看特定资源的 Flow Logs(流日志)选项卡来查看有关流日志的信息。当您选择该资源时,将列出该资源的所有流日志。显示的信息包括流日志的 ID、流日志配置以及有关流日志的状态的信息。

查看中转网关流日志的相关信息
  1. 通过 https://console.aws.amazon.com/vpc/ 打开 Amazon VPC 控制台。

  2. 在导航窗格中,选择 Transit gateways(中转网关)或 Transit gateway attachments(中转网关连接)。

  3. 选择中转网关或中转网关连接,然后选择 Flow Logs(流日志)。此时有关流日志的信息将显示在选项卡上。Destination type(目标类型) 列指示要将流日志发布到的目标。

添加或删除流日志的标签

您可以在 Amazon EC2 和 Amazon VPC 控制台中添加或删除流日志的标签。

为中转网关流日志添加或删除标签
  1. 通过 https://console.aws.amazon.com/vpc/ 打开 Amazon VPC 控制台。

  2. 在导航窗格中,选择 Transit gateways(中转网关)或 Transit gateway attachments(中转网关连接)。

  3. 选择中转网关或中转网关连接。

  4. 对于所需的流日志选择 Manage tags(管理标签)

  5. 要添加新标签,请选择 Create Tag(创建标签)。要删除标签,请选择删除按钮(x)。

  6. 选择 Save(保存)。

查看流日志记录

您可以使用日志控制台或 Amazon S3 控制台查看您的流 CloudWatch 日志记录,具体取决于所选的目标类型。在您创建流日志之后,可能需要几分钟才能显示在控制台中。

查看发布到日志的流 CloudWatch 日志记录
  1. 打开 CloudWatch 控制台,网址为 https://console.aws.amazon.com/cloudwatch/

  2. 在导航窗格中,请选择 Logs(日志),然后选择包含您日志流的日志组。此时将显示每个中转网关的日志流的列表。

  3. 选择包含您希望查看其流日志记录的中转网关 ID 的日志流。有关更多信息,请参阅 Transit Gateway 流日志记录

查看发布到 Amazon S3 的流日志记录
  1. 通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. 对于 Bucket name(存储桶名称),选择流日志发布到的存储桶。

  3. 对于 Name(名称),选中日志文件旁边的复选框。在对象概述面板上,选择 Download(下载)

搜索流日志记录

您可以使用日志控制台搜索发布到 CloudWatch 日志的流 CloudWatch 日志记录。您可以使用度量筛选器筛选流日志记录。流日志记录用空格分隔。

使用日志控制台搜索流 CloudWatch 日志记录
  1. 打开 CloudWatch 控制台,网址为 https://console.aws.amazon.com/cloudwatch/

  2. 在导航窗格中,选择 Logs(日志),然后选择 Log groups(日志组)。

  3. 选择包含您的流日志的日志组。此时将显示每个中转网关的日志流的列表。

  4. 如果您知道要搜索的中转网关,则选择单个日志流。或者,选择 Search Log Group(搜索日志组) 以搜索整个日志组。如果日志组中有许多中转网关,则这可能需要一些时间,所需时间也取决于您选择的时间范围。

  5. 对于 Filter events(筛选事件),请输入以下字符串。这假定流日志记录使用默认格式

    [version, resource_type, account_id,tgw_id, tgw_attachment_id, tgw_src_vpc_account_id, tgw_dst_vpc_account_id, tgw_src_vpc_id, tgw_dst_vpc_id, tgw_src_subnet_id, tgw_dst_subnet_id, tgw_src_eni, tgw_dst_eni, tgw_src_az_id, tgw_dst_az_id, tgw_pair_attachment_id, srcaddr, dstaddr, srcport, dstport, protocol, packets, bytes,start,end, log_status, type,packets_lost_no_route, packets_lost_blackhole, packets_lost_mtu_exceeded, packets_lost_ttl_expired, tcp_flags,region, flow_direction, pkt_src_aws_service, pkt_dst_aws_service]
  6. 通过为字段指定值,根据需要修改筛选器。以下示例按特定的源 IP 地址进行筛选。

    [version, resource_type, account_id,tgw_id, tgw_attachment_id, tgw_src_vpc_account_id, tgw_dst_vpc_account_id, tgw_src_vpc_id, tgw_dst_vpc_id, tgw_src_subnet_id, tgw_dst_subnet_id, tgw_src_eni, tgw_dst_eni, tgw_src_az_id, tgw_dst_az_id, tgw_pair_attachment_id, srcaddr= 10.0.0.1, dstaddr, srcport, dstport, protocol, packets, bytes,start,end, log_status, type,packets_lost_no_route, packets_lost_blackhole, packets_lost_mtu_exceeded, packets_lost_ttl_expired, tcp_flags,region, flow_direction, pkt_src_aws_service, pkt_dst_aws_service] [version, resource_type, account_id,tgw_id, tgw_attachment_id, tgw_src_vpc_account_id, tgw_dst_vpc_account_id, tgw_src_vpc_id, tgw_dst_vpc_id, tgw_src_subnet_id, tgw_dst_subnet_id, tgw_src_eni, tgw_dst_eni, tgw_src_az_id, tgw_dst_az_id, tgw_pair_attachment_id, srcaddr= 10.0.2.*, dstaddr, srcport, dstport, protocol, packets, bytes,start,end, log_status, type,packets_lost_no_route, packets_lost_blackhole, packets_lost_mtu_exceeded, packets_lost_ttl_expired, tcp_flags,region, flow_direction, pkt_src_aws_service, pkt_dst_aws_service]

    以下示例将按中转网关 ID tgw-123abc456bca、目标端口和字节数进行筛选。

    [version, resource_type, account_id,tgw_id=tgw-123abc456bca, tgw_attachment_id, tgw_src_vpc_account_id, tgw_dst_vpc_account_id, tgw_src_vpc_id, tgw_dst_vpc_id, tgw_src_subnet_id, tgw_dst_subnet_id, tgw_src_eni, tgw_dst_eni, tgw_src_az_id, tgw_dst_az_id, tgw_pair_attachment_id, srcaddr, dstaddr, srcport, dstport = 80 || dstport = 8080, protocol, packets, bytes >= 500,start,end, log_status, type,packets_lost_no_route, packets_lost_blackhole, packets_lost_mtu_exceeded, packets_lost_ttl_expired, tcp_flags,region, flow_direction, pkt_src_aws_service, pkt_dst_aws_service]

删除流日志

可以使用 Amazon VPC 控制台删除中转网关流日志。

使用这些过程可以禁用资源的流日志服务。删除流日志不会从 CloudWatch 日志中删除现有日志流,也不会删除 Amazon S3 中的日志文件。必须使用相应服务的控制台来删除现有流日志数据。此外,删除发布到 Amazon S3 的流日志时,不会删除存储桶策略和日志文件访问控制列表(ACL)。

删除中转网关流日志
  1. 通过 https://console.aws.amazon.com/vpc/ 打开 Amazon VPC 控制台。

  2. 在导航窗格中,选择 Transit gateways(中转网关)

  3. 选择一个 Transit gateway ID(中转网关 ID)。

  4. 在流日志部分中,选择要删除的流日志。

  5. 选择 Actions(操作),然后选择 Delete flow logs(删除流日志)。

  6. 选择 Delete(删除)确认您要删除流日志。

API 和 CLI 概述和限制

您可以使用命令行或 API 执行此页面上介绍的任务。

使用 CreateFlowLogs API 或 create-flow-logs CLI 时,存在以下限制:

  • --resource-ids 最多可含有 25 个 TransitGatewayTransitGatewayAttachment 资源类型。

  • --traffic-type 默认情况下不是必填字段。如果您在中转网关资源类型上使用此字段,会返回错误。此限制仅适用于中转网关资源类型。

  • --max-aggregation-interval 具有默认值 60,这是中转网关资源类型的唯一可用值。如果您尝试传递任何其他值,则会返回错误。此限制仅适用于中转网关资源类型。

  • --resource-type 支持两个新资源类型,TransitGatewayTransitGatewayAttachment

  • 如果您未设置要包含的字段,则 --log-format 会包含中转网关资源类型的所有日志字段。这仅适用于中转网关资源类型。

创建流日志
描述您的流日志
查看您的流日志记录(日志事件)
删除流日志