博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AWS Athena 分析日志
阅读量:7014 次
发布时间:2019-06-28

本文共 1901 字,大约阅读时间需要 6 分钟。

AWS里面可以用Athena来分析S3里面保存的日志,他把日志转换成数据库表的格式,这样就可以通过sql语句进行查询了。这个功能和在windows服务器上用logparser来分析Exchange或者IIS的日志很相似。

下面做个演示,通过Cloudtrail记录管理日志,然后通过Athena来查询日志内容。

首先选择CloudTrail, CloudTrail 是一个日志记录的服务,他和cloudwatch的区别在于这个服务更多是侧重于审计,他的内容都是关于什么时候,什么账号,从什么IP上进行了什么操作。

AWS Athena 分析日志

点击 Create Trail

AWS Athena 分析日志

取个名字, 创建一个新的S3 bucket来保存日志

AWS Athena 分析日志

创建好之后可以看见他自动已经在记录最新的日志了

AWS Athena 分析日志

然后选择 Athena

AWS Athena 分析日志

跳过向导,直接进入查询器的编辑器,这里是编辑SQL语句的地方。这里我直接创建一个的数据库

AWS Athena 分析日志

下面来创建一个表,从指定的S3 Bucket里面获取数据。

我们可以通过向导创建,但是比较繁琐

AWS Athena 分析日志

比较容易的是通过脚本创建,注意最后一行S3存储桶的地址

CREATE EXTERNAL TABLE cloudtrail_logs (eventversion STRING,useridentity STRUCT<               type:STRING,               principalid:STRING,               arn:STRING,               accountid:STRING,               invokedby:STRING,               accesskeyid:STRING,               userName:STRING,sessioncontext:STRUCT
< mfaauthenticated:STRING, creationdate:STRING>,sessionissuer:STRUCT< type:STRING, principalId:STRING, arn:STRING, accountId:STRING, userName:STRING>>>,eventtime STRING,eventsource STRING,eventname STRING,awsregion STRING,sourceipaddress STRING,useragent STRING,errorcode STRING,errormessage STRING,requestparameters STRING,responseelements STRING,additionaleventdata STRING,requestid STRING,eventid STRING,resources ARRAY
< ARN:STRING, accountId:STRING, type:STRING>>,eventtype STRING,apiversion STRING,readonly STRING,recipientaccountid STRING,serviceeventdetails STRING,sharedeventid STRING,vpcendpointid STRING)ROW FORMAT SERDE 'com.amazon.emr.hive.serde.CloudTrailSerde'STORED AS INPUTFORMAT 'com.amazon.emr.cloudtrail.CloudTrailInputFormat'OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'LOCATION 's3://mycloudtrailbucket-faye/AWSLogs/757250003982/';

AWS Athena 分析日志

创建表成功的样子

AWS Athena 分析日志

下面我们可以进行一个简单的查询,结果如下。

AWS Athena 分析日志

转载于:https://blog.51cto.com/beanxyz/2337746

你可能感兴趣的文章
jni
查看>>
贪婪匹配和非贪婪匹配
查看>>
精通Hyperledger之fabric环境搭建-mac版(1.1)
查看>>
.NET中的DRY和SHY原则
查看>>
Win7下安装.Net Framework 4.0报错0xc8000222
查看>>
php:统计邮件的大小方法
查看>>
python 处理图片2
查看>>
Eclipse更改保存的SVN账号密码
查看>>
python re 正则表达式学习总结
查看>>
Mysqldump参数大全
查看>>
RHCE模拟试题
查看>>
Java随记(二)
查看>>
网站性能
查看>>
MVC框架
查看>>
大型在线游戏服务器架构分享
查看>>
JS设置Button为可用和不可用状态
查看>>
自动化运维学习--python
查看>>
消息队列性能比较
查看>>
git 用户名和邮箱设置
查看>>
java-反射机制的原理与简单使用
查看>>