是否有可对CloudWatch Log Filters进行离线程序化测试的开源库?
需求目标
可离线程序化测试CloudWatch Log Filters,希望能编写简单程序批量对多条消息测试多个过滤器,支持类似aws.cloudwatchLogsTester.isMatch(msg, filter)的调用方式。
遇到问题
目前暂未找到可直接调用的对应资源(如npm包、py wheel等)来对任意给定消息测试过滤器,不希望自行重新实现官方文档规定的过滤逻辑。
可行解决方案
- Node.js 生态可直接使用
cloudwatch-log-filter开源包,完全对齐官方过滤语法,调用方式符合预期:const { matches } = require('cloudwatch-log-filter'); // 入参分别为待测试日志消息、CloudWatch过滤规则 const isMatch = matches(msg, filterPattern); - Python 生态可使用
cloudwatchlogs-filter-parser开源包,支持全量官方过滤语法特性:from cloudwatchlogs_filter_parser import parse filter_parser = parse("your_filter_pattern") is_match = filter_parser.match("your_log_message") - 如果你需要自定义扩展或者跨语言使用,可以复用LocalStack中经过生产验证的CloudWatch过滤器逻辑,该实现完全对齐AWS官方行为,无需自行从零推导语法规则。
内容的提问来源于stack exchange,提问作者cischa
相关产品推荐
相关产品推荐

