我一直在使用此文档,但无法使其完全按预期工作:https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html
当CloudWatch日志显示错误或超时时,我希望基于它们触发lambda。
以下是2条示例消息:
'message': '2021-04-14T20:48:20.344Z 1f562170-e507-4419-8875-2da228de0b86 Task timed out after 1.00 secondsnn'
'message': '[ERROR] Exception: say hello to my little friendrTraceback (most recent call last):rxa0xa0File "/var/task/lambda_function.py", line 6, in lambda_handlerrxa0xa0xa0xa0raise Exception("say hello to my little friend")n'
我让它只适用于这种过滤模式:
?ERROR ?Task
但当我试图将其扩展到时,它不起作用
?ERROR ?Task timed out after
我认为问题在于;定时的"out";以及";在";需要。
在文档中,我没有看到任何内容允许我执行OR命令,然后将或的每一侧包装成一个分组的单词字符串。
如果有人有一些建议,可能真的有帮助,谢谢你。
试错带来了一个解决方案:
?"[ERROR]" ?"Task timed out after"