使用日志审计查看MaxCompute执行过哪些操作

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: MaxCompute完整地记录用户的各项操作行为,会自动将操作日志实时投递到ActionTrail中,ActionTrail针对作业(Instance)、表(Table)、函数(Function)、资源(Resource)、用户(User)、角色(Role)和授权(Privilege)等事件的多种操作行为进行记录。

背景

在很多的数据开发场景下,我们需要记录每个子账户都做了什么,在哪个项目执行了具体的操作,出问题了需要审计是谁干的,什么时间,怎么操作的。例如,有人恶意删除数据、有人将数据下载下来、谁上传的资源、有人给没有权限的人添加了权限、 等等。这些动作需要管理、跟踪。本文通过如何在ActionTrail控制台进行搜索来跟踪我们在MaxCompute中执行的动作。

日志审计和Informattion_Schema(元数据)对比

1.日志审计记录的是用户的各项操作行为
2.日志审计记录的是当前账号下的所有项目,Informattion_Schema记录的是当前project
3.如果我们要查看用户的行为信息可以去日志审计查看,如果查询一些静态信息可以去元数据查看比如:表的拥有者,资源的拥有者
4.Informattion_Schema中的TASKS_HISTORY表可以记录已完成的作业历史,但是没有对应的事件名称不方便查找。比如查找删除表,我们可以直接去ActionTrail直接搜索DropTable 就可以查到
5.MaxCompute记录用户的各项操作行为是实时投递到ActionTrail中的,操作记录会在10分钟内被操作审计追踪并记录。操作记录保存的是180天的记录,目前ActionTrail支持搜索,如果需要对日志进行更精确的分析和保存更长的时间,可以投递到oss上或这个sls上同步到MaxCompute进行分析
6.如果我们要统计一天当中耗费最高的作业可以去Informattion_Schema中的task_histoy表中查看

--统计一天耗费cu最大的前十个任务信息
select * from information_Schema.TASKS_HISTORY where   ds = 20200812 order by cost_cpu limit 10;
--统计一天每个用户使用的cu
select owner_name,SUM(cost_cpu) from information_Schema.TASKS_HISTORY where   ds = 20200814 group by owner_id,owner_name;

如何使用ActionTrail进行搜索

我们列举几个简单的场景进行搜索
首先登录到ActionTrail控制台的历史事件查询页面选择要查看的地域。

image.png

如上图 事件类型:所有类型,时间:选择对应的时间 产品类型:MaxCompute
事件名称:对应的文档名称https://help.aliyun.com/document_detail/164657.html?spm=a2c4g.11186623.6.972.232411db3BAG7v
image.png
查看子账号做过什么
用户名:子账号的名字
查看当前任务是被谁杀掉的
事件名称:jobChange 资源名称:instanceId(具体的任务id)
查看表做过什么操作
资源名称:表名字
查看表被谁读取过
事件名称:ReadTableData 资源名称:表名字
查看表被谁删除:
事件名称:DropTable 资源名称:表名字
查看表被谁下载过
事件名称:DownloadTable(直接使用tunnel download 表名下载) InstanceTunnel(通过instanceuid 下载)资源名称:表名字
查看表什么时间上传的数据
事件名称:UploadTable(包括数据集成)资源名称:表名字
查看函数创建
事件名称:CreateFunction 资源名称:函数名字
查看资源创建事件
事件名称:CreateResource 资源名称:资源名字
查看创建角色
事件名称:CreateRole 资源名称:角色名称
查看授权事件
事件名称:GrantRole 资源名称:角色名称
对应查询结果的字段说明参考:
https://help.aliyun.com/document_detail/164657.html?spm=a2c4g.11186623.6.972.232411db3BAG7v
其中source_ip字段:通过客户端或者sdk执行的是本机IP。通过DataWorks执行的不是本机IP
correlation_id字段:对应的instanceid,我们可以到对应的项目执行 wait instanceid查看任务的执行具体情况

大家如果对MaxCompute有更多咨询或者建议,欢迎扫码加入 MaxCompute开发者社区钉钉群,或点击链接 申请加入。
image.png

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
目录
相关文章
|
2月前
|
数据采集 存储 大数据
大数据之路:阿里巴巴大数据实践——日志采集与数据同步
本资料全面介绍大数据处理技术架构,涵盖数据采集、同步、计算与服务全流程。内容包括Web/App端日志采集方案、数据同步工具DataX与TimeTunnel、离线与实时数仓架构、OneData方法论及元数据管理等核心内容,适用于构建企业级数据平台体系。
|
11月前
|
存储 消息中间件 大数据
大数据-69 Kafka 高级特性 物理存储 实机查看分析 日志存储一篇详解
大数据-69 Kafka 高级特性 物理存储 实机查看分析 日志存储一篇详解
206 4
|
11月前
|
存储 Prometheus NoSQL
大数据-44 Redis 慢查询日志 监视器 慢查询测试学习
大数据-44 Redis 慢查询日志 监视器 慢查询测试学习
141 3
|
11月前
|
存储 消息中间件 大数据
大数据-70 Kafka 高级特性 物理存储 日志存储 日志清理: 日志删除与日志压缩
大数据-70 Kafka 高级特性 物理存储 日志存储 日志清理: 日志删除与日志压缩
151 1
|
11月前
|
存储 消息中间件 大数据
大数据-68 Kafka 高级特性 物理存储 日志存储概述
大数据-68 Kafka 高级特性 物理存储 日志存储概述
95 1
|
11月前
|
存储 分布式计算 NoSQL
大数据-136 - ClickHouse 集群 表引擎详解1 - 日志、Log、Memory、Merge
大数据-136 - ClickHouse 集群 表引擎详解1 - 日志、Log、Memory、Merge
270 0
|
存储 分布式计算 大数据
【Flume的大数据之旅】探索Flume如何成为大数据分析的得力助手,从日志收集到实时处理一网打尽!
【8月更文挑战第24天】Apache Flume是一款高效可靠的数据收集系统,专为Hadoop环境设计。它能在数据产生端与分析/存储端间搭建桥梁,适用于日志收集、数据集成、实时处理及数据备份等多种场景。通过监控不同来源的日志文件并将数据标准化后传输至Hadoop等平台,Flume支持了性能监控、数据分析等多种需求。此外,它还能与Apache Storm或Flink等实时处理框架集成,实现数据的即时分析。下面展示了一个简单的Flume配置示例,说明如何将日志数据导入HDFS进行存储。总之,Flume凭借其灵活性和强大的集成能力,在大数据处理流程中占据了重要地位。
262 3
|
SQL 分布式计算 MaxCompute
SQL开发问题之对于ODPS中的UNION操作,执行计划的问题如何解决
SQL开发问题之对于ODPS中的UNION操作,执行计划的问题如何解决
221 7
|
存储 分布式计算 监控
日志数据投递到MaxCompute最佳实践
日志服务采集到日志后,有时需要将日志投递至MaxCompute的表中进行存储与分析。本文主要向用户介绍将数据投递到MaxCompute完整流程,方便用户快速实现数据投递至MaxCompute。
415 2
|
SQL 分布式计算 大数据
MaxCompute操作报错合集之 Spark Local模式启动报错,是什么原因
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
166 4

相关产品

  • 云原生大数据计算服务 MaxCompute