887
阿里云
处理-实现ActionTrail__最佳实践_日志服务-阿里云
Action Trail是一款用于记录用户账号各类API调用操作的产品。 Action Trail记录了每次API调用的重要信息,如操作者、操作时间、对象、动作类型、来源等详尽的信息,这些调用记录,可以精确追踪、还原用户行为,对于安全分析,资源变更追查,合规审查有非常重要的作用。
Action Trail需要考虑的问题
Action Trail这样一款有价值的产品是如何实现的,有哪些问题需要考虑?
首先,由于各类API调用的日志分散在各处,怎么去收集散落在各地的日志呢?
之后,各应用的行为不尽相同,日志内容、格式也比如有区别,如何提供一个统一的方式来处理差异的日志?
最后,对于用户来说,如何能够方便地获取Action Trail提供的调用日志,来进行后续的追踪、分析呢?
Action Trail架构
在清楚了Action Trail的问题和处理流程之后,我们看看ActionTrail是如何实现的。下面是Action Trail的框架
Action Trail如何解决这些问题
对于第一个问题, Action Trail自己去解析应用记录在本地的日志显然成本太高,这要求Action Trail完全理解应用日志格式,并侵入应用机器,耦合度实在是太高,那有没有一个更好的方式来处理呢?
其实,基于日志服务,就能很容易解决这个问题。 应用的日志,应用最熟悉,应用各自通过logtail,将每条日志解析成key:value这样半结构化形式,上传至日志服务应用各自的Project,再通过RAM授权Action Trail读取这部分日志。只要事先约定Action Trail需要的key, Action Trail就可以直接从日志服务消费各应用的API调用日志了。
由于日志格式是半结构化的,Action Trail可以使用同样的方式来处理、分析,那第二个问题也解决了。Action Trail实时地从日志服务中抓取各应用的日志,提取必要的字段,并将剩余的字段统一打包在一起。清洗完毕的数据,Action Trail也记录在本地,通过logtail实时上传至日志服务中Action Trail的Project中。
下图就是经过清洗处理后的一条日志,该日志记录了一个用户在17:53的时候重启了一个虚拟机。
最后,如果将Action Trail处理后的日志交到用户,让用户方便地处理呢?放到用户的Oss bucket中是一个不错的选择。Action Trail定期从日志服务中批量读取处理后的日志,根据用户账号和应用类型进行分类,上传至用户授权的bucket中,这样用户就可以直接从自己的oss bucket中读取这部分日志了。
最后更新:2016-11-24 11:23:47
上一篇:
处理-数据清洗/ETL__最佳实践_日志服务-阿里云
下一篇:
处理-搭建监控系统__最佳实践_日志服务-阿里云
后端签名密钥说明文档__使用手册(开放API)_API 网关-阿里云
使用第三方数据卷__数据卷指南_用户指南_容器服务-阿里云
查询设备详情__查询相关_API 列表_OpenAPI 2.0_移动推送-阿里云
高可用的SNAT网关__最佳实践_用户指南_专有网络 VPC-阿里云
安全巡检失败如何处理__产品常见问题_服务器安全(安骑士)-阿里云
DescribeZones__LoadBalancer相关API_API 参考_负载均衡-阿里云
Zeppelin 使用说明__开源组件介绍_用户指南_E-MapReduce-阿里云
2.2 图片防盗链__2. OSS最佳实践_开放存储OSS 体验_体验馆-阿里云
Redis-cli连接__连接实例_快速入门_云数据库 Redis 版-阿里云
步骤 3-3:创建和查询多维数据集__创建监控任务_用户指南_业务实时监控服务 ARMS-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云