DLA提供ActionTrail日志自动清洗解决方案,可以将ActionTrail投递到OSS的日志文件转换为DLA中可以直接查询的数据表,同时自动对数据进行分区和压缩,方便您分析和审计对云产品的操作日志。
日志分析痛点
ActionTrail是阿里云提供的云账号资源操作记录的查询和投递服务,可用于安全分析、资源变更追踪以及合规性审计等场景。您可以通过ActionTrail控制台查看各个云产品的操作日志。对于30天以内的日志,ActionTrail支持投递到日志服务进行分析;对于30天以外的数据可以投递到OSS上,但直接分析OSS中的数据有以下痛点。
- 日志数据格式复杂,不利于直接分析
ActionTrail中保存的是JSON格式的数据,一行内有多条数据,数据以一个Array的形式保存,例如
[{"eventId":"event0"...},{"eventId":"event1"...}]
。理论上可以分析上述格式的JSON数据,但非常不便,需要先把每行数据拆分成多条记录,然后再对拆分后的记录进行分析。
- 小文件多,分析数据耗时且占用大量系统资源
当您通过账号(阿里云账号和RAM子账号)频繁操作云产品时,每天产生的操作日志文件数非常多。以操作DLA的账号为例,该账号下每天会产生几千个数据文件,一个月的文件数将达到几十万个,大量的数据文件对大数据分析非常不便,分析数据耗时,且需要足够大的集群资源才能进行大数据分析。
前提条件
使用ActionTrail日志清洗之前,您需要按照以下步骤做好准备工作。
说明 使用ActionTrail日志清洗功能时,要求ActionTrail、OSS、DLA所属Region相同,否则无法使用该功能。
步骤一:创建Schema
- 登录Data Lake Analytics管理控制台。
- 在页面左上角,选择DLA所在地域。
- 在左侧导航栏单击 。
- 在数据入湖页面单击ActionTrail日志清洗中的进入向导。
- 在ActionTrail日志清洗页面,根据页面提示进行参数配置。
参数名称 参数描述 ActionTrail文件根目录 ActionTrail投递到OSS中日志数据的存储目录。目录以 AliyunLogs/Actiontrail/
结尾。- 选择位置:自定义ActionTrail投递到OSS中的日志数据的存储目录。
- 自动发现:DLA自动设置ActionTrail投递到OSS中的日志数据的存储目录。
Schema名称 设置Schema的名称,即OSS在DLA中的映射数据库名称。 清洗后数据保存位置 DLA清洗OSS数据后,将结果数据回写入OSS即数据清洗后的存储位置。DLA会默认指定存储位置。您也可以自定义存储位置。 数据清洗时间 设置每天DLA清洗OSS数据的时间。系统默认的数据清洗时间是00:30,您可以根据业务规律,将数据清洗时间设置在业务低峰期,以免清洗过程中可能对业务造成的影响。 - 完成上述参数配置后单击创建,创建Schema。
Schema创建成功后,DLA自动在您设定的同步时间将ActionTrail投递到OSS中的日志数据同步到DLA中,并在DLA中创建OSS日志文件对应的表。
您也可以在数据入湖页面的任务列表页签中,在操作列单击执行随时手动发起数据同步操作,将ActionTrail投递到OSS中的日志数据同步到DLA中,并在DLA中创建OSS日志文件对应的表。
数据同步到DLA以后,您就可以在DLA中使用标准SQL语法对ActionTrail日志数据进行分析。