我一直在 Splunk 中提取字段,这看起来适用于所有标头,但对于标头 l-s-m,我收到的错误是"子模式名称中的语法错误(缺少终止符("。
我已经对其他标题做了类似的操作并且所有工作正常,但这是唯一一个带有"hypen"符号的标题,它给出了此错误,我已经尝试了多次,但这没有帮助。
头:
Content-Type: application/json
Accept: application/json,application/problem json
l-m-n: txxxmnoltr
Accept-Encoinding:gzip
我正在尝试的正则表达式在 SPLUNK 中"rex field=u "l-m-n: (?<l-m-n>.*)"
。你能引导我到这里吗?
>rex
不能提取到带有连字符的字段名称中。但是,您可以使用rename
| rex field=u "l-m-n: (?<lmn>.*)" | rename lmn AS "l-m-n"
通常,我会避免在字段名称中使用连字符,因为它可能会被误认为是减号。如果要使用字段l-m-n
,则需要在任何地方引用它,例如'l-m-n'
。我强烈建议您坚持使用字段名称lmn
。
尝试运行以下内容以了解我的意思
| makeresults | eval l-m-n=10 | eval l=1 | eval m=1 | eval n=1 | eval result_noquote=l-m-n | eval result_quoted='l-m-n'