Splunk Rex 表达式

Splunk Rex Expression

不知是否有人可以帮助我。

首先,对于这个看似简单的问题,我深表歉意,但我真的很难解决这个问题。

我正在尝试从 Splunk 中的原始数据中提取 nino 字段,格式如下 "nino\":\"AB123456A\"

今天早上我看了很多教程,但我仍然找不到 'Rex' 表达式。我只是想知道是否有人可以就 'Rex' 表达式的作用提供一些指导。

rex search command 是正则表达式(也称为 regex 或 regexp)的缩写。

您可以执行类似于以下查询的查询,它会查看原始偶数并尝试解析出 nino 的值:

index=foo | rex field=_raw "^\"\w+\\\":\\\"(?P<nino>[^\\]+)"

附加 | table nino 如果您真的想确定该字段是否已提取,您可以在 table

中轻松验证
index=foo | rex field=_raw "^\"\w+\\\":\\\"(?P<nino>[^\\]+)" | table nino

我使用 field extractor 生成了正则表达式,这非常直观。您可能希望自己进行字段提取,因为您的数据与您添加的示例并不完全相同。理想情况下,您只需要定义一个带有字段提取的源类型,这样您就不需要使用 rex 搜索命令。