划分两个搜索文本的计数
Divide the count of two search texts
当我搜索“SearchText1”时,假设有 20 条记录。
当我搜索“SearchText2”时,有 10 个结果
然后我需要在仪表板中显示单个值“2”
如何制定 Splunk 查询?
我尝试了下面的查询,其中分子计数计算正确但分母计数相关部分有问题:
index=something "searchText1"
| stats count as NumeratorCount
| eval numerator=NumeratorCount
| append [ | search index=something "searchText2"
| stats count as DenominatorCount
| eval denominator=DenominatorCount ]
| eval result=round(if(denominator=0,0,numerator/denominator), 2)
| table result
当您删除 table
命令时,您会看到分子和分母在不同的结果中。 eval
命令计算'result'的意思是分子除以NULL,NULL除以分母。
解决方法是使用 appendcols
合并两行,如本例所示。
index=_internal "service_health_monitor"
| stats count as NumeratorCount
| eval numerator=NumeratorCount
| appendcols [ | search index=_internal "service_health_metrics_monitor"
| stats count as DenominatorCount
| eval denominator=DenominatorCount ]
| eval result=round(if(denominator=0,0,numerator/denominator), 2)
| table result
当我搜索“SearchText1”时,假设有 20 条记录。
当我搜索“SearchText2”时,有 10 个结果
然后我需要在仪表板中显示单个值“2”
如何制定 Splunk 查询?
我尝试了下面的查询,其中分子计数计算正确但分母计数相关部分有问题:
index=something "searchText1"
| stats count as NumeratorCount
| eval numerator=NumeratorCount
| append [ | search index=something "searchText2"
| stats count as DenominatorCount
| eval denominator=DenominatorCount ]
| eval result=round(if(denominator=0,0,numerator/denominator), 2)
| table result
当您删除 table
命令时,您会看到分子和分母在不同的结果中。 eval
命令计算'result'的意思是分子除以NULL,NULL除以分母。
解决方法是使用 appendcols
合并两行,如本例所示。
index=_internal "service_health_monitor"
| stats count as NumeratorCount
| eval numerator=NumeratorCount
| appendcols [ | search index=_internal "service_health_metrics_monitor"
| stats count as DenominatorCount
| eval denominator=DenominatorCount ]
| eval result=round(if(denominator=0,0,numerator/denominator), 2)
| table result