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

Splunk并发计算场景下如何定位指定事件对应的全部并发请求

解决方案

一、核心逻辑说明

不要使用固定的_time前后10秒偏移来匹配,这种方式会因为不同请求运行时长不一致出现漏判。两个请求并发的准确判断条件是时间窗口存在重叠,即:
待匹配请求的开始时间 < 目标事件的结束时间 AND 待匹配请求的结束时间 > 目标事件的开始时间
你现有逻辑里每个事件的时间窗口边界为:

  • 开始时间:Start Time(原permitAcquiredTime字段)
  • 结束时间:_time(你原有逻辑里定义的endTime,即请求跑完的时间点)

二、手动查询目标事件的所有并发请求SPL

先从你现有查询结果中,复制要排查的事件的Start Time(时间戳格式)和_time(时间戳格式),替换到下面的查询中即可:

index="sfdc" source="sfdc_event_log://EventLog_SFDC_Production_eventlog_hourly" EVENT_TYPE IN (API, RestAPI) RUN_TIME>20000 
| eval endTime=_time 
| eval permitAcquiredTime=endTime-(RUN_TIME-20000)/1000
# 替换下面两个值为你要排查的事件的对应字段值
| where permitAcquiredTime < [目标事件的_endTime_值] AND endTime > [目标事件的_Start Time_值]
| eval dbTotalTime=DB_TOTAL_TIME/1000000
| fieldformat dbTotalTime=round(dbTotalTime,0)
| rename permitAcquiredTime as "Start Time", endTime as "End Time", API_TYPE as "API Type", EVENT_TYPE as "Event Type", ENTITY_NAME as "Entity Name", apimethod as "API Method", RUN_TIME as "Run Time", CPU_TIME as "CPU Time", dbtotalTime as "DB Total Time", REQUEST_ID as "Request ID", USER_ID as "User ID"
| sort "Start Time" asc

三、仪表盘下钻配置方法

  1. 给原有展示并发列表的表格面板添加下钻,设置点击行时传递两个参数:
    • 参数1:target_start,值为当前行的Start Time字段
    • 参数2:target_end,值为当前行的_time字段
  2. 新建下钻展示的结果面板,SPL使用上面的查询逻辑,把固定值替换为传入的参数即可:
    index="sfdc" source="sfdc_event_log://EventLog_SFDC_Production_eventlog_hourly" EVENT_TYPE IN (API, RestAPI) RUN_TIME>20000 
    | eval endTime=_time 
    | eval permitAcquiredTime=endTime-(RUN_TIME-20000)/1000
    | where permitAcquiredTime < $target_end$ AND endTime > $target_start$
    | eval dbTotalTime=DB_TOTAL_TIME/1000000
    | fieldformat dbTotalTime=round(dbTotalTime,0)
    | rename permitAcquiredTime as "Start Time", endTime as "End Time", API_TYPE as "API Type", EVENT_TYPE as "Event Type", ENTITY_NAME as "Entity Name", apimethod as "API Method", RUN_TIME as "Run Time", CPU_TIME as "CPU Time", dbtotalTime as "DB Total Time", REQUEST_ID as "Request ID", USER_ID as "User ID"
    | sort "Start Time" asc
    
  3. 调整下钻面板的时间范围:建议设置为相对传入参数的前后1小时,避免全局时间范围过窄导致漏匹配,可在面板查询的最前面加时间范围限定:
    | addinfo 
    | where _time >= relative_time($target_start$, "-1h") AND _time <= relative_time($target_end$, "+1h")
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 20:39:00