使用 Lambda 函数收集应用程序负载均衡日志
应用程序负载均衡将传入的应用程序流量分配到各种资源,例如 EC2 实例。因此,负载均衡访问日志包含有关客户端 IP 地址、网络路径和服务器响应的关键信息。使用 Site24x7 监控 Application Load Balancer 日志可让您深入了解流量模式并帮助解决问题。了解有关使用 Site24x7 进行日志管理的更多信息。
Site24x7 是 AWS 审核的 Lambda 服务就绪计划合作伙伴
创建日志配置文件
要收集 Application Load Balancer 日志,您首先需要创建一个日志配置文件。导航到管理> AppLogs> 日志配置文件> 添加日志配置文件,然后按照以下说明进行操作:
- 配置文件名称:输入日志配置文件的名称。
- 日志类型:选择ELB 应用日志。如果您尚未在 AWS 账户中启用ELB 访问日志,请按照此处提供的说明进行操作。
- 日志来源:选择 Amazon Lambda。
- 单击保存。
- 按照此处所述配置 Lambda 函数。
配置 Lambda 函数
- 从服务下拉列表中选择Lambda ,然后选择创建函数。从头开始选择作者,为函数定义一个名称,然后选择 Python 3.7 作为Runtime。
- 权限:您可以选择现有 IAM 角色或从 AWS 策略模板创建新角色。从策略模板下拉列表中选择Amazon S3 Object 只读权限,然后输入角色名称。您还可以选择创建新的用户角色并将权限扩展到其他服务。
- 添加触发器:向下滚动以选择S3 Bucket。添加到 S3 存储桶的任何日志文件都将由 Lambda 函数发送到 Site24x7。
- 配置触发器
- 存储桶:输入将从中收集日志的 S3 存储桶的名称。
- 事件类型:选择所有对象创建事件。
- 单击添加。
- 在打开的窗口中,单击Lambda 函数,如图所示:
- 滚动到编辑器,然后将提供的代码放在下面的链接中:
https://github.com/site24x7/applogs-aws-lambda/blob/master/s3/s3-sender.py
- 输入代码后,导航到 Site24x7 Web 客户端,选择管理> Applogs > 日志配置文件,然后选择创建的日志配置文件,然后复制屏幕上显示的代码作为变量logTypeConfig 的输入。
- 将此代码粘贴到 环境变量下, 并在 AWS 控制台中使用字段名称 logTypeConfig 。
ELB 应用程序负载均衡日志仪表板
AppLogs 为每种日志类型创建一个专属仪表板,并默认显示一些小窗件。以下是 Application Load Balancer 日志仪表板中可用的小窗件列表:
- 平均传输字节数
- 收到的字节数
- 请求处理时间
- 响应处理时间
- 目标处理时间
- 请求趋势
- ELB 状态码统计
- 用户代理统计
- 错误原因
- 前 20 个失败的请求
- 客户端主机错误
除了默认小窗件之外,您保存的搜索也将自动添加到仪表板中。