在不使用JSON的情况下将字段添加到Cloudwatch

时间:2019-03-19 18:22:06

标签: amazon-cloudwatch

因此,我有Nginx和tomcat服务器的典型磨机日志,它们只是具有典型日志格式的单行文本文件。我已将tomcat访问日志更改为输出管道分隔字段,因此我可以使用一些Unix脚本轻松处理它们。我想摆脱我的unix脚本,转而使用cloudwatch以类似的方式处理日志,但是我发现cloudwatch确实不了解默认情况下的时间戳,消息和日志流。

它将使用JSON添加字段,但是当涉及到日志文件时,JSON是冗长的。我只想让它处理CSV文件,这似乎是JSON的明显替代方案。我愿意更改日志格式以满足这样的要求,但是我找不到有关如何执行此操作的任何信息。

我唯一的选择是将日志转换为JSON,以便将字段添加到cloudwatch吗?我知道parse命令,但是我发现每次我要构建查询时都要重新构造字段很麻烦。特别是由于这些将主要是访问日志,其中将包含许多字段。我的系统上安装了AWS CloudWatch Log Agent,目前正在将这些日志发送到CloudWatch。

1 个答案:

答案 0 :(得分:0)

处理空间分隔的日志文件最接近的方法是使用度量筛选器。至少CloudWatch的作者就是这样设计的。

https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html

最好的例子在这里:

不确定这是否可以解决我要使用的日志,但这只是一个开始。这是最恰当的答案。如果您想做对的事,就必须自己做。