跳转至

AWS Lambda 日志

AWS Lambda 会代表您自动监控 Lambda 函数并将函数指标发送到 Amazon CloudWatch。

创建日志摄取

您可以使用日志通控制台或通过部署独立的 CloudFormation 堆栈来将日志摄取到 Amazon OpenSearch Service 中。

重要

  • Lambda 必须与日志通位于同一区域。
  • 默认情况下,该解决方案将每天轮换索引。您可以在额外设置中进行调整。

使用日志通控制台

  1. 登录日志通控制台。
  2. 在导航窗格中的 日志分析管道 下,选择 AWS 服务日志。
  3. 选择创建日志摄取按钮。
  4. 在 AWS 服务 部分,选择 AWS Lambda。
  5. 选择下一步。
  6. 在 指定设置 下,从下拉列表中选择 Lambda 函数。(可选步骤)如果需要跨账户摄取日志,需要先在 账户 的下拉列表中选择一个链接的 AWS 账户。
  7. 选择 下一步。
  8. 在 指定 OpenSearch 域 部分,为 Amazon OpenSearch 域 选择一个已导入的域。
  9. 如果您想要加载关联的模板 Amazon OpenSearch 服务仪表板,请选择 是。
  10. 如果需要,您可以更改目标 Amazon OpenSearch 服务索引的 索引前缀。默认前缀是 Lambda 函数名称。
  11. 在 日志生命周期 部分,输入用于管理 Amazon OpenSearch 服务索引生命周期的天数。集中式日志功能将为此管道自动创建关联的 索引状态管理 (ISM) 策略。
  12. 在 日志处理器设置 中,选择 日志处理器类型,并根据需要配置 Lambda 并发数,然后 下一步。
  13. 如有需要,添加标签。
  14. 选择 创建。

使用 CloudFormation 堆栈

此自动化 AWS CloudFormation 模板在 AWS 云中部署 日志通- Lambda Log Ingestion 解决方案。

从 AWS 控制台中启动 下载模板
AWS 海外区域 启动堆栈 模板
AWS 中国区域 启动堆栈 模板
  1. 登录 AWS 管理控制台并选择按钮以启动 AWS CloudFormation 模板。 您还可以下载模板开始部署。

  2. 要在不同的 AWS 区域中启动日志通,请使用控制台导航栏中的区域选择器。

  3. 在 创建堆栈 页面上,验证正确的模板 URL 显示在 Amazon S3 URL 文本框中,然后选择 下一步。

  4. 在 指定堆栈详细信息 页面上,为您的解决方案堆栈分配一个名称。

  5. 在 参数 下,查看模板的参数并根据需要进行修改。 此解决方案使用以下默认值。

参数 默认值 描述
Log Bucket Name <需要输入> 用于导出 CloudWatch Logs 的日志桶。
Log Bucket Prefix <需要输入> 存储日志的 S3 存储桶路径前缀。
Log Source Account ID <可选输入> CloudWatch 日志组所在账户 ID. 对于跨账户日志摄取是必填 (需要先 链接一个账户). 默认情况下, 会使用您在 步骤 1 中登录的账户 ID。
Log Source Region <可选输入> CloudWatch 日志组所在的区域. 默认情况下, 会使用您在 步骤 2 中指定的区域。
Log Source Account Assume Role <可选输入> 跨账户日志摄取所需要使用的 IAM Role. 对于跨账户日志摄取是必填 (需要先 链接一个账户)。
KMS-CMK ARN <可选输入> 用于加密 SQS 的 KMS-CMK ARN。留空以创建新的 KMS CMK。
Enable OpenSearch Ingestion as processor <可选输入> Ingestion 表 Arn。如果不使用 OSI 作为处理器,请留空。
Log Group Names <需要输入> 日志的 CloudWatch 日志组的名称。
S3 Backup Bucket <需要输入> 用于存储失败提取日志的 S3 备份存储桶名称。
Engine Type OpenSearch OpenSearch 的引擎类型。选择 OpenSearch 或 Elasticsearch。
OpenSearch Domain Name <需要输入> Amazon OpenSearch 集群的域名。
OpenSearch Endpoint <需要输入> OpenSearch 端点 URL。例如,vpc-your_opensearch_domain_name-xcvgw6uu2o6zafsiefxubwuohe.us-east-1.es.amazonaws.com。
Index Prefix <需要输入> 日志的 OpenSearch 索引的公共前缀。索引名称将为 <Index Prefix>-<log-type>-<YYYY-MM-DD>。
Create Sample Dashboard Yes 是否创建示例 OpenSearch 仪表板。
VPC ID <需要输入> 选择可以访问 OpenSearch 域的 VPC。日志处理 Lambda 将驻留在选定的 VPC 中。
Subnet IDs <需要输入> 选择至少两个可以访问 OpenSearch 域的子网。日志处理 Lambda 将驻留在子网中。确保子网可以访问 Amazon S3 服务。
Security Group ID <需要输入> 选择将与日志处理 Lambda 关联的安全组。确保安全组有权访问 OpenSearch 域。
Number Of Shards 5 将索引均匀分布在所有数据节点上的分片数。将每个分片的大小保持在 10-50 GiB 之间。
Number of Replicas 1 OpenSearch 索引的副本数。每个副本都是索引的完整副本。如果 OpenSearch 选项设置为 带备用的域,你需要将其配置为 2。
Age to Warm Storage <可选输入> 将索引移至温存储所需的时间(例如 7d)。索引时间是从创建到现在之间的时间。支持的单位是 d(天)和 h(小时)。仅当 OpenSearch 中启用了温存储时才生效。
Age to Cold Storage <可选输入> 将索引移入冷存储所需的时间(例如 30d)。索引时间是从创建到现在之间的时间。支持的单位是 d(天)和 h(小时)。仅当 OpenSearch 中启用了冷存储时才生效。
Age to Retain <可选输入> 保留索引的时间(例如 180d)。索引时间是从创建到现在之间的时间。支持的单位是 d(天)和 h(小时)。如果值为空,则不会删除该索引。
Rollover Index Size <可选输入> 索引滚动所需的分片大小(例如 30GB)。
Index Suffix yyyy-MM-dd 索引后缀格式(例如:yyyy-MM-dd、yyyy-MM-dd-HH)。索引名称将为 <Index Prefix>-<Log Type>-<Index Suffix>-000001。
Compression type best_compression 用于压缩存储数据的压缩类型。 可用值为 best_compression 和 default。
Refresh Interval 1s 索引多久刷新,即刷新索引最近的更改数据并使它们可用于搜索。 可以设置为 -1 以禁用刷新。 默认为 1 秒。
EnableS3Notification True 一个二进制选项,用于启用或禁用针对 Amazon S3 存储桶的通知。大多数情况下,建议使用默认选项。
LogProcessorRoleName <可选> 为日志处理器指定一个角色名称。该名称不能与现有角色名称重复。如果没有指定名称,将生成一个随机名称。可选参数,不是必填项。
QueueName <可选> 为 SQS 指定一个队列名称。该名称不能与现有角色名称重复。如果没有指定名称,将生成一个随机名称。可选参数,不是必填项。
  1. 选择下一步。

  2. 在 配置堆栈选项 页面上,选择 下一步。

  3. 在 审核 页面上,查看并确认设置。 选中确认模板创建 AWS Identity and Access Management (IAM) 资源的复选框。

  4. 选择创建堆栈 部署堆栈。

您可以在 AWS CloudFormation 控制台的 状态 列中查看堆栈的状态。 正常情况下,您大约 15 分钟后会看到 CREATE_COMPLETE 状态。**

查看仪表板

该仪表板包括以下可视化图表。

可视化名称 数据源字段 描述
Lambda 事件
  • log event
显示随时间分布的事件的图表。
日志帐户
  • owner
显示占不同 AWS 帐户(所有者)的日志事件比例的饼图。
日志组
  • log_group
显示 Lambda 环境中各种日志组之间日志事件分布的饼图。
日志列表
  • time
  • log_group
  • log_stream
  • log_detail
提供了包括时间戳、日志组、日志流和日志详细信息在内的日志事件的详细列表。

示例仪表板

您可以访问Amazon OpenSearch中的内置仪表板来查看日志数据。更多信息请参阅访问仪表板。

您可以点击下面的图像查看高分辨率的示例仪表板。

lambda-db