splunk - 如何构建 Splunk 搜索查询?
问题描述
我是 Splunk 的新手。因此,我需要一些支持来构建搜索查询。
以下是我的日志打印方式:
[181] xxxx-xx-xx xx:xx:xx 信息(大量文本)RITM1234::FAILED BECAUSE ROOT CAUSE::Ticket 是一个添加,但用户没有名为 XYZ 的有效帐户
[181] xxxx-xx-xx xx:xx:xx 信息(大量文本)RITM1234::::FAILED BECAUSE::Account XYZ 对用户 1234 不正确。不会关闭工单。
我希望得到下表格式的输出:
RITM |应用程序|用户|错误
RITM1234|XYZ|1234|Ticket 是 Add,但用户没有名为 XYZ 的有效帐户
解决方案
以下命令将从事件中提取重要字段。它只是使用正则表达式来分解事件。
rex field=_raw "RITM (?<RITM>\d+):+(?<msg>[^:]+)+:+(?<root_cause>[^:]+)"
完成后,您可以通过以下方式提取用户名,再次使用正则表达式
rex field=root_cause "(named|user) (?<username>\S+)"
把所有东西和一张桌子放在一起,你应该得到类似下面的东西
rex field=_raw "RITM (?<RITM>\d+):+(?<msg>[^:]+)+:+(?<root_cause>[^:]+)" | rex field=root_cause "(named|user) (?<username>\S+)" | table RITM, username, root_cause
推荐阅读
- sql-server - 带有 Logsatsh 的 JDBC MSSQL 以连接到 Montoring DB
- typescript - TypeScript 中的 private 关键字和 private 字段有什么区别?
- android - 如果应用程序图标是 HD,ActivityInfo.loadIcon 会导致 OutOfMemoryError
- javafx - JavaFX CheckboxTreeItem:只处理选中的复选框
- odata - OData:如何在 UI5 中获取最高 ID
- c# - 在运行时更改语言的资源文件
- reactjs - React-leaflet 自定义组件 - 未传递上下文?
- python - 我如何在网络 x 上与我在 Twitter 上的关注者创建图表?
- c# - 如何在复杂的 JSON 对象中搜索 Cosmos DB
- symfony - 使用 Symfony 控制台在后台启动服务器时出现问题