2015-09-15 102 views
0

如何将IIS日志中的数据发送到Amazon CloudWatch日志以便我可以监控我的网站的性能。如何将IIS日志中的数据发送到CloudWatch日志

我试图监视的事情之一是我的Web请求的平均请求大小。我知道IIS日志具有有关Web请求(BytesRecv,ByteSent)大小的数据,并且我可以让CloudWatch日志读取我的IIS日志文件,但是我无法弄清楚的是通过CloudWatch日志告知BytesRecv,ByteSent应该被处理作为2个数据点。

回答

0

我不认为CloudWatch Logs服务具有该功能。当它接收像IIS这样的日志时,您可以创建简单的过滤器来匹配某些内容(如404错误),然后可以在给定时间段内针对这些错误的数量创建数据点。但是,我还没有找到直接在CloudWatch中从日志中提取数据的方法。

我相信这个问题的解决方案是使用Amazon Kinesis从CloudWatch获取日志文件,然后使用EMR处理它们以获取这些数据点,然后将该信息放入S3中​​。我知道,说起来容易做起来难。我认为最难的部分是编写您的EMR逻辑,然后将这些数据转换成某种统一的格式写入S3。我建议在该地区寻求帮助。

另一种选择是让Amazon Kinesis在S3中删除日志文件,然后在上载这些日志文件时触发Amazon Lambda操作。然后,Lambda函数可以解析这些日志文件,提取所需的信息,将其放入某种json,xml等中,然后将其写入S3。这里最难的部分是编写lambda函数。此链接描述了如何使用lambda来解析写入S3的CloudTrail日志,因此您可以按照很多逻辑来执行此操作。

http://docs.aws.amazon.com/lambda/latest/dg/wt-cloudtrail-events-adminuser.html