[英]Parse amazon cloudwatch RDS audit log for user
我正在处理 RDS 审计日志并尝试通过日志查询解析出用户名。 @message 列审计中的数据如下所示: 1234567890,rds-instance-name,rdsadmin,localhost,123,0,CONNECT,,,0
我想汇总日志中各个条目的计数,但我不知道如何从 @message 列中解析用户名。 在上面的示例中,用户名是 rdsadmin。
这是我到目前为止的查询:
fields @timestamp, @message
| filter @message like /(?i)(connect)/
| parse @message /(?<@ip>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/
| stats count() AS counter by @user, @ip
| sort by @user desc, @counter desc
| limit 50
正则表达式能否解析逗号分隔字符串中的第三个值?
这似乎有效,也许不是最好的方法? :
fields @timestamp, @message
| filter @message like /(?i)(CONNECT)/
| parse @message ',*,*,' as @instance,@user
| parse @message /(?<@ip>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/
| stats count() AS counter by @user, @ip
| sort by @user desc, @counter desc
| limit 50
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.