amazon-web-services - AWS Cloudwatch 日志指标 FilterPattern on XML 文本
问题描述
我正在尝试在打印到日志文件的 XML 文本上向 AWS Cloudwatch 日志添加过滤器。
例如<one> <Test>Something</Test> <Msg>blah blah</Msg></one>
我正在尝试将过滤器模式放在 text 上<Test>Something</Test>
。我尝试了以下选项,但它们都不起作用。我收到“无效的指标过滤器模式”。日志文件中的某些行也不会包含此文本。
<Test>Something</Test>
<Test>Something</Test>
<\"Test>\"Something<\"/\"Test>\"
请问有什么建议吗?
解决方案
A bit late but might help future visitors. I got around by using query inside Cloudwatch Logs Insights
Example log generated in Cloudwatch
Timestamp: 2021-01-12T20:50:40.579+01:00
Message:
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'>
<EventData>
<Data Name='SubjectUserName'>-</Data>
<Data Name='SubjectDomainName'>-</Data>
<Data Name='SubjectLogonId'>0x0</Data>
<Data Name='TargetDomainName'>NT AUTHORITY</Data>
<Data Name='LogonProcessName'>NtLmSsp </Data>
<Data Name='AuthenticationPackageName'>NTLM</Data>
<Data Name='LogonGuid'>{00000000-0000-0000-0000-000000000000}</Data>
<Data Name='TransmittedServices'>-</Data>
</EventData>
</Event>
Query to find all events with TargetDomainName=NT AUTHORITY
// very simple regex
fields @message
| filter @message like /<Data Name='TargetDomainName'>NT AUTHORITY<\/Data>/
推荐阅读
- sqlite - SQLITE:使用通配符搜索和替换
- random - 如何使用 Rust 中的 rand crate 输入整数种子以生成随机数?
- python - 生成具有最大连续元素差异的所有组合
- c# - 登录到使用重定向的网页
- php - 在特定页面执行功能
- swift - 比较从两个字符串计算的值
- python - PiCamera - 如何将“rgb”格式的 np.array 捕获保存到文件中?
- sql - PostgreSQL 随机子查询
- javascript - 我应该使用哪个功能?.toDataURL() 还是 .toBlob()?
- android - Android VideoView 不会在树莓派上播放视频