与 Lambda 执行日志集成
通过与 Site24x7 的Lambda 扩展集成,实现对 Lambda 环境的实时可观察性。扩展作为 Lambda 函数运行时进程之外的伴随进程运行,因此您可以配置执行环境。
Site24x7 与 Lambda 扩展的集成可帮助您在调用之前、期间和之后插入执行周期。日志是从 Lambda 函数而不是 CloudWatch 日志中获取的,并被推送到 Site24x7 AppLogs 以进一步诊断它们。
当 JSON 访问策略添加了权限lambda:UpdateFunctionConfiguration时,会自动完成集成。
Site24x7 是 AWS 审核的 Lambda 服务就绪计划合作伙伴
内容
先决条件
对于 AWS 控制台,您需要:
- AWS 账户 ID。
- Site24x7 监控的 Lambda 函数。
对于 Site24x7 控制台,您需要:
- 拥有一个有效且活跃的 AWS 账户。
- 将您的 AWS 账户与 Site24x7 集成。了解更多。
- 授予lambda:UpdateFunctionConfiguration权限,使我们能够自动将您的账户与 Lambda Extensions 集成。
- 如果没有,您可以按照以下步骤手动设置集成:
使用扩展 ARN 与 Lambda 扩展集成
要使用扩展 ARN 手动将 Site24x7 与 Lambda 扩展集成,您需要:
- 登录到您的 Site24x7 帐户。
- 导航到Cloud > AWS > 全部账户汇总 > Lambda 监视器。
- 选择要与 Lambda 扩展集成的监视器(Lambda 函数)的名称。
- 导航到Lambda 执行日志选项卡,您将在其中看到文本字段Log Config Key和Lambda Extension ARN及其值。
- 登录 AWS 管理控制台,在页面顶部的搜索栏中输入“AWS Lambda”。
- 导航到函数 并搜索由 Site24x7 监控的 Lambda 函数。
- 选择该功能后,选择图层,然后添加图层。
- 在选择层下,选择指定 ARN。将 Site24x7 控制台中提供的 Lambda 扩展 ARN 粘贴到指定 ARN文本字段中。单击添加。
- 收到成功消息后,导航到监控函数的配置选项卡,然后从左侧导航栏中选择环境变量。
- 选择添加环境变量。
- 默认情况下,要输入的 Key 是logTypeConfig,Value 是Site24x7 控制台的Log Config Key字段中提供的编码字符串。单击保存。 您将收到一条成功消息。
- 在 Site24x7 控制台中重新加载Lambda 执行日志选项卡以查看成功的集成
使用 .ZIP 存档将 Site24x7 与 Lambda 扩展集成
当您使用 .ZIP 文件进行集成时,必须始终将SITE24X7_LAMBDA_LOG_EXTENSION和logTypeConfig添加为键。要使用容器映像部署函数,请下载 .ZIP 文件并将扩展文件包含在容器映像的 /opt/extensions 文件夹中。了解更多。
要使用 .ZIP 存档将 Site24x7 与 Lambda 扩展集成,您需要:
- 登录到您的 Site24x7 帐户。
- 导航到云 > AWS > 所有账户摘要 > Lambda 监视器。
- 选择要与 Lambda 扩展集成的监视器(Lambda 函数)的名称。
- 导航到Lambda 执行日志选项卡,您将在其中看到使用 ZIP 文件集成选项卡,其中包含文本字段Log Config Key和S3 URL以及用于选择区域的下拉列表。
- 将共享的S3 URL(基于所选区域)复制并粘贴到浏览器中,然后下载 ZIP 文件。下载的 ZIP 文件包含扩展名。
- 登录 AWS 管理控制台,在页面顶部的搜索栏中输入 AWS Lambda。
- 导航到图层并单击创建图层
- 填写名称字段,然后上传您在步骤 5 中下载的 ZIP 文件。您还可以粘贴 Site24x7 控制台中提供的 S3 URL。单击创建。您将收到一条成功消息。
- 创建层后,您可以通过将层包含在 Site24x7 中监控的函数中来添加 Lambda 扩展。复制您在创建层后获得的版本 ARN,并将其粘贴到监控的 Lambda 函数的添加层屏幕中的指定 ARN文本字段中。单击添加。
- 在监控函数的配置选项卡下,从左侧导航栏中选择环境变量。单击编辑。
- 在编辑环境变量页面中,单击添加环境变量,然后输入键和值。键必须是SITE24X7_LAMBDA_LOG_EXTENSION,值可以是任意值。单击保存。
- 在 Site24x7 控制台中重新加载Lambda 执行日志选项卡以查看成功的集成。
升级 Lambda 扩展版本
(i) ARN 方法
要升级使用 ARN 方法集成的 Lambda 扩展的版本,您需要:
- 按照步骤 1 到 3使用 ARN 方法将 Site24x7 与 Lambda 扩展集成。
- 导航到Lambda 执行日志选项卡,您会在其中看到顶部的黄色框。单击Upgrade Lambda Log Extension时,将出现一个弹出窗口。选择Upgrade using Extension ARN,其中两个文本字段Log Config Key和Lambda Extension ARN将可用。
- 使用Log Config Key和Lambda Extension ARN的新值,按照步骤 5 到 11创建层,并添加环境变量。
- 在 Site24x7 控制台中重新加载Lambda 执行日志选项卡以查看成功的集成。
(ii) .ZIP 存档
要升级使用 .ZIP 存档方法集成的 Lambda 扩展的版本,您需要:
- 按照步骤 1 到 3使用 .ZIP 存档将 Site24x7 与 Lambda 扩展集成。
- 导航到Lambda 执行日志选项卡,您会在其中看到顶部的黄色框。单击升级 Lambda 日志扩展后,将出现一个弹出窗口。选择使用 ZIP 文件升级,其中将提供文本字段S3 URL。
- 使用这个新的 S3 URL,按照步骤 5 到 11创建一个层,并添加环境变量。
- 在 Site24x7 控制台中重新加载Lambda 执行日志选项卡以查看成功的集成。
性能影响
Lambda 扩展可能会影响您的 Lambda 函数的性能,因为它们与您的代码共享相同的资源。这些共享资源包括 CPU、内存、网络带宽和存储。为了监控 lambda 扩展的性能开销,我们考虑使用扩展时估计额外时间(在您的代码完成运行之后)的指标PostRuntimeExtensionsDuration 。
由于函数执行持续时间和 Lambda 扩展的内存使用量增加,AWS 的 Lambda 函数将产生额外费用。
示例:
要了解 Lambda 扩展对函数的代码大小、执行时间和延迟的性能影响,请考虑以下两种情况:
案例 1:没有 Lambda 扩展的函数执行结果。
案例 2:使用 Lambda 扩展的函数执行结果。