如何匹配 aws cloudwatch 日志中的多个模式以触发 lambda
Posted
技术标签:
【中文标题】如何匹配 aws cloudwatch 日志中的多个模式以触发 lambda【英文标题】:how to match multiple patterns in aws cloudwatch log to trigger a lambda 【发布时间】:2021-12-24 05:40:42 【问题描述】:我正在尝试设置 cloudwatch 事件来触发 lambda 函数,我想在日志中的消息是“完成请求之前退出进程”或“错误运行时退出并终止错误信号”时触发它。
指定一个很容易,并且工作正常(使用 serverless.yml 文件)
- cloudwatchLog:
logGroup: '/aws/lambda/hello'
filter: 'Error Runtime exited with error signal killed'
但我需要为两条消息触发事件,使用OR
过滤器的正确语法是什么?
- cloudwatchLog:
logGroup: '/aws/lambda/hello'
filter: 'Process exited before completing request' OR 'Error Runtime exited' with error signal killed'
我尝试过使用'[Process exited before completing request, Error Runtime exited]'
,但这不起作用,aws 文档指定如何匹配一个或另一个单词,但不匹配这样的完整句子
【问题讨论】:
【参考方案1】:这行得通:
- cloudwatchLog:
logGroup: '/aws/lambda/hello'
filter: '[(message="*Process exited before completing*") || (message="*signal: killed*") || (message="*Runtime.ExitError*")]'
【讨论】:
以上是关于如何匹配 aws cloudwatch 日志中的多个模式以触发 lambda的主要内容,如果未能解决你的问题,请参考以下文章
如何从 AWS API Gateway cloudwatch 日志中获取用户的公共 IP?
AWS CloudWatch 中的指标、日志和事件之间有啥区别? [关闭]
将 aws lambda 日志重定向到 cloudwatch 中的特定日志组
AWS Elastic Beanstalk:将自定义日志添加到 CloudWatch?