使用 Lambda 函数收集 S3 日志
S3 存储桶充当可扩展的容器,可以在其中存储大量数据。Site24x7 使用 Lambda 函数查找添加到 S3 存储桶中的新日志,并将其发送到 Site24x7 进行索引。了解有关使用 Site24x7 进行日志管理的更多信息。
您还可以使用 SQS 将日志配置为从 S3 存储桶收集。为避免配置 SQS 权限的开销,您可以使用 Lambda 函数来收集您的日志,如下所述。
Site24x7 是 AWS 审核的 Lambda 服务就绪计划合作伙伴
定义日志类型:
日志类型是应用程序写入日志格式的明确定义。不同的应用程序(如 IIS、Cassandra、Apache、MySQL)可能以不同的格式写入日志。将它们定义为日志类型对来自不同应用程序的日志进行分组,以简化访问并有助于高效搜索。为存储在 S3 存储桶中的日志定义日志类型后,将其列在日志配置文件下,然后通过执行搜索查询开始管理日志。创建自定义日志类型。
创建日志配置文件
日志配置文件使您能够将日志类型与特定日志源相关联。
要创建日志配置文件,请导航到管理> AppLogs > 日志配置文件 > 添加日志配置文件,然后按照以下说明操作:
- 配置文件名称:输入日志配置文件的名称。
- 日志类型:选择要与此配置文件关联的 S3 日志的日志类型。
- 日志来源:选择 Amazon Lambda。
- 时区:为您的日志选择一个时区。
- 单击保存。
- 按照此处所述配置 Lambda 函数。
配置 Lambda 函数
- 从服务下拉列表中选择Lambda ,然后选择创建函数。从头开始选择作者,为函数定义一个名称,然后选择 Python 3.7 作为Runtime。
- 权限:您可以选择现有 IAM 角色或从 AWS 策略模板创建新角色。从策略模板下拉列表中选择Amazon S3 Object 只读权限,然后输入角色名称。您还可以选择创建新的用户角色并将权限扩展到其他服务。
- 添加触发器:向下滚动以选择S3 Bucket。添加到 S3 存储桶的任何日志文件都将由 Lambda 函数发送到 Site24x7。
- 配置触发器
- 存储桶:输入将从中收集日志的 S3 存储桶的名称。
- 事件类型:选择所有对象创建事件。
- 单击添加。
- 滚动到编辑器,然后将提供的代码放在下面的链接中:
https://github.com/site24x7/applogs-aws-lambda/blob/master/s3/s3-sender.py
- 输入代码后,导航到 Site24x7 Web 客户端,选择管理> Applogs > 日志配置文件,然后选择创建的日志配置文件,并将屏幕上显示的代码复制为字段Environment variables 下变量logTypeConfig的输入。