You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调整Splunk查询以生成DtransferCount和DMCopyCount独立列?

Splunk 查询列拆分解决方案

你当前用append将两个搜索结果纵向拼接(上下叠加),导致结果是两行独立数据,现在要改成横向合并为DtransferCount和DMCopyCount两列,可按以下两种场景处理:

场景1:仅展示两类事件的总计数

如果不需要按_raw分组,只需要统计两类事件的总数量,用子查询直接赋值更高效:

| makeresults 
| eval DtransferCount=[search index="pd" "successful" "notif/output/" | stats count | return $count]
| eval DMCopyCount=[search index="pd" "SBID=nr" "DM" "PAM=sende" "notif/archive/" | stats count | return $count]
| fields DtransferCount DMCopyCount

场景2:按_raw分组展示对应计数

如果需要保留原有的_raw分组逻辑,让每个_raw对应两类事件的计数,先分别统计再聚合:

( search index="pd" "successful" "notif/output/" 
  | stats count as DtransferCount by _raw )
| append 
  [ search index="pd" "SBID=nr" "DM" "PAM=sende" "notif/archive/" 
    | stats count as DMCopyCount by _raw ]
| stats values(DtransferCount) as DtransferCount values(DMCopyCount) as DMCopyCount by _raw
| fillnull value=0 DtransferCount DMCopyCount
  • 先分别统计两类事件的计数并命名为目标列名
  • 用stats按_raw聚合,把同一_raw的两类计数合并到同一行
  • fillnull填充空值,确保所有行都有完整的两列数据

原查询问题说明

append是纵向拼接结果集,所以每行只会包含其中一类的字段,无法形成横向的两列结构。上述方法通过子查询赋值或聚合转列,实现了将两个结果集合并为横向列的效果。

内容的提问来源于stack exchange,提问作者Ajay Takur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 13:35:01