将两个splunk查询的结果显示为一个

时间:2017-01-06 22:22:03

标签: join splunk

我有两个单独的splunk查询: 第一个查询:在过去24小时内输出唯一用户数 第二次查询:在geo = US

中输出唯一用户在过去24小时内的数量

我想创建一个时间表,这个时间表会显示一个折线图,其中包含每天来自美国的用户百分比。

如何实现这一目标。

3 个答案:

答案 0 :(得分:2)

您可以使用以下方法加入这两个查询:

|

所以你的查询看起来像这样:

{firstQuery} as countUS| {secondQuery} as countTotal | eval perc=countUS/countTotal

答案 1 :(得分:0)

您可以使用条件来计算来自美国的条件

示例查询:

index=data | timechart dc(user) as dc_user, dc(eval(if(geo=US,user,NULL))) as us_user | eval perc_us=round(us_user/dc_user*100,2) | table _time, perc_us

或者你可以使用SPL join命令但效率较低,因为它必须两次读取数据并加入结果。

答案 2 :(得分:0)

您可以对数据进行匿名化,并在此处显示查询吗?在Splunk中有很多方法可以做到这一点,但我们还需要更多的东西继续下去。

例如

Query: index=myindex sourcetype=mySourcetype | stats count dc(ip) as userTotal | append [ index=myindex sourcetype=mySourcetype region=US | stats dc(ip) as USTotal]