amazon-web-services - Aws CloudWatch 过滤带有 @ 的紧凑 json
问题描述
我们使用 serilog 从我们的 .nrt 核心应用程序输出。我们正在使用紧凑的 json 来减小大小。在紧凑的情况下,它似乎将错误键与@符号放在一起;
"@l": "警告"
我似乎无法让过滤器正常工作,它要么不返回结果,要么说错误。我已经尝试了很多东西,但我确信这应该有效;
{ $.@l = "警告" }
任何人都建议我要去哪里错。
解决方案
我认为您不能@
在选择器中使用。从文档:
属性选择器是字母数字字符串,也支持“-”和“_”字符。
解决这个问题的一种方法是匹配该行,就好像它不是 json 的一部分。
例如,如果您的日志行如下所示:
"@l": "Warning"
您可以使用以下方法将其过滤掉:
[key="@l", colon, value=Warning]
推荐阅读
- amazon-web-services - 是否有任何选项可以查询和获取 IAM 政策的 ARN?
- cookies - 运行 testcafe 测试时如何避免写入浏览器 cookie?
- c# - 命名空间和表单名称的问题
- javascript - 将现有的 d3 实时流线图转换为使用经过的秒数而不是时间
- javascript - forEach() 方法只显示 1 个条目,如何让它们全部显示?
- mysql - 如果表 B 中存在数据,则覆盖表 A 中的数据,如果存在其他 ID 的外键,则映射到自己的覆盖数据
- react-native - 在 React Native 中获取视频/音频的持续时间以进行进度条实现
- c++ - 这个迭代器操作是否在 C++ 中未定义
- excel - 有什么方法可以检查某些操作是否会引入外部链接?
- c++ - 定义不可删除指针的最简洁方法是什么?