我是新来的splunk.我有这个json:
"request": {
"headers": [
{
"name": "x-real-ip",
"value": "10.31.68.186"
},
{
"name": "x-forwarded-for",
"value": "10.31.68.186"
},
{
"name": "x-nginx-proxy",
"value": "true"
}
我需要在属性名具有“x-real-ip”值时选择一个值。
3条答案
按热度按时间u1ehiz5o1#
有几种方法可以做到这一点-下面是我最常用的一种(假设您 * 也 * 希望
value
与name
一起使用):这将跳过
request.headers{}.name
多值字段中某处不包含“x-real-ip
“的所有事件接下来,它将两个多值字段(name和value)合并为一个mv字段,并以
|
字符分隔然后展开结果集,以便一次查看一行
最后,您将查找 * 仅 * 包含值“
x-real-ip
“的结果如果您希望从组合字段中提取
value
,请添加以下行:当然,您还可以根据需要对数据执行任何其他SPL操作
bsxbgnwa2#
我尝试@Warren 's answer,但得到以下错误:
“eval”命令中的错误:表达式格式不正确。应为)。
您需要添加一个重命名,因为
mvzip
中的{}
字符会导致问题。7fyelxc53#
当您提问时,请提供正确的信息。您在此过程中已用完日志。