Amazon web services 使用cloudwatch日志过滤AWS上发送给Lambda的日志
我的管道是:Amazon web services 使用cloudwatch日志过滤AWS上发送给Lambda的日志,amazon-web-services,aws-lambda,amazon-cloudwatchlogs,Amazon Web Services,Aws Lambda,Amazon Cloudwatchlogs,我的管道是: cloudwatchlogs>lambda>弹性搜索 问题是这些日志太冗长(我对此无能为力),需要过滤70%的日志,因此它们不会无用地填充我的弹性集群 我想我可以在cloudwatch日志组上应用metrix过滤日志,但这并没有过滤任何东西,也就是说它会将它们从cloudwatch中删除,只是绘制一些关于它的统计数据…,因此那些不需要的日志仍然会出现 当你创建订阅过滤器时,我发现的只是一个小地方:但它非常原始,我需要至少30-40种不同的过滤器模式,而不仅仅是一种 所以我的问题是:
cloudwatchlogs>lambda>弹性搜索
问题是这些日志太冗长(我对此无能为力),需要过滤70%的日志,因此它们不会无用地填充我的弹性集群
我想我可以在cloudwatch日志组上应用metrix过滤日志,但这并没有过滤任何东西,也就是说它会将它们从cloudwatch中删除,只是绘制一些关于它的统计数据…,因此那些不需要的日志仍然会出现
当你创建订阅过滤器时,我发现的只是一个小地方:但它非常原始,我需要至少30-40种不同的过滤器模式,而不仅仅是一种
所以我的问题是:
我唯一不被不需要的日志所困扰的方法是在lambda函数中手动过滤它们(regex等)?一定有更简单的方法,不是吗
谢谢我最后要做的是让日志到达我的ElasticCluster而不进行任何过滤,然后使用kibana预过滤我不需要的内容,并在elastic search中定期删除所有日志 到目前为止,最重要的是,当您在kibana上创建一个过滤器时,它还为您提供了自己执行请求所需的json 例如:
curl -X POST ES/INDEX/_delete_by_query
{
"query": {
"match": {
"sourceIPAddress": {
"query": "ec2.amazonaws.com",
"type": "phrase"
}
}
}
}
我最后要做的是让日志到达我的ElasticCluster而不进行任何过滤,然后使用kibana预过滤我不需要的内容,并在elastic search中定期删除所有日志 到目前为止,最重要的是,当您在kibana上创建一个过滤器时,它还为您提供了自己执行请求所需的json 例如:
curl -X POST ES/INDEX/_delete_by_query
{
"query": {
"match": {
"sourceIPAddress": {
"query": "ec2.amazonaws.com",
"type": "phrase"
}
}
}
}
如果您有30-40种不同的模式要过滤,那么您的请求并不简单,因此我同意您的看法,Lambda将在这种情况下为您提供最大的灵活性。听起来您需要一个自定义程序来处理过滤。我将使用python和boto扫描和过滤日志,然后将结果手动发送到lambda外部的ES。如果您有30-40种不同的模式要过滤,那么您的请求并不简单,因此我同意您的看法,Lambda将在这种情况下为您提供最大的灵活性。听起来您需要一个自定义程序来处理过滤。我将使用python和boto扫描和过滤日志,然后将结果手动发送到lambda外部的ES。