使用 Lambda 函数收集 Classic Load Balancer 日志
Classic Load Balancer 处理的基于 IP 路由的请求提供了有用的日志数据,可用于排查负载均衡器和后端实例的问题。Site24x7 作为统一的 Web 控制台,为您提供搜索日志条目并在违反阈值时发出告警的能力。了解更多关于 Site24x7 日志管理的信息。
创建日志配置文件
要收集 Classic Load Balancer 日志,首先需要创建一个日志配置文件。导航至 Admin > AppLogs > Log Profile > Add Log Profile,并按照以下说明操作:
- Profile Name(配置文件名称):为您的日志配置文件输入名称。
- Log Type(日志类型):选择 ELB Classic Log。如果您尚未在 AWS 账户中启用 ELB 访问日志,请按照此处提供的说明操作。
- Log Source(日志来源):选择 Amazon Lambda。
- 点击 Save。
- 按照此处说明配置 Lambda 函数。
配置 Lambda 函数
- 从 Services 下拉列表中选择 Lambda,然后选择 Create Function。选择 Author from scratch,定义函数名称,并将 Runtime 选择为 Python 3.7。

- Permissions(权限):您可以选择现有的 IAM 角色,或从 AWS 策略模板创建新角色。从 Policy Template 下拉菜单中选择 Amazon S3 Object Read-only permission,并输入角色名称。您也可以选择创建新的用户角色并将权限扩展到其他服务。
- Add triggers(添加触发器):向下滚动选择 S3 Bucket。添加到 S3 存储桶的任何日志文件都将由 Lambda 函数发送到 Site24x7。

- Configure Triggers(配置触发器)
- Bucket(存储桶):输入将从中收集日志的 S3 存储桶名称。
- Event type(事件类型):选择 All object create events。
- 点击 Add。
- 在打开的窗口中,点击 Lambda Function,如图所示:

- 滚动到编辑器,将以下链接中提供的代码粘贴进去:
https://github.com/site24x7/applogs-aws-lambda/blob/master/s3/s3-sender.py
- 输入代码后,导航至 Site24x7 Web 客户端,选择 Admin > Applogs > Log Profile,然后选择已创建的日志配置文件,复制屏幕上显示的代码,将其作为 logTypeConfig 字段下变量 logTypeConfig 的输入值。

- 将此代码粘贴到 AWS 控制台的环境变量中,字段名称为 logTypeConfig。

ELB Classic Load Balancer 日志仪表板
AppLogs 为每种日志类型创建专属仪表板,并默认显示一些小部件。以下是 Classic Load Balancer 日志仪表板中可用的小部件列表:
- Average Bytes Transferred(平均传输字节数)
- Request Processing Time(请求处理时间)
- Backend Processing Time(后端处理时间)
- Response Processing Time(响应处理时间)
- Request Trend(请求趋势)
- ELB Status Code Stats(ELB 状态码统计)
- User Agent Stats(用户代理统计)
- Top 20 Failed Requests(前 20 个失败请求)
- Errors By Client Host(按客户端主机划分的错误)

Note
除默认小部件外,您保存的搜索也会自动添加到仪表板中。
