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

Splunk如何按提取的Id字段统计字符串lat的出现次数

Splunk 单事件内字符串计数实现方案

完整查询语句

<替换为你的日志搜索范围,比如 index=xxx 或 source=xxx>
# 提取Id字段,如果你环境中Id已经自动提取可删除此行
| rex "Id\":\"(?<Id>[^\"]+)"
# 统计单条日志中lat的出现次数
| eval lat_count = countmatches(_raw, "lat")
# 按Id分组汇总总次数
| stats sum(lat_count) as occurrences by Id

逻辑说明

  • rex 行:用正则从原始日志中提取Id字段值,若你已配置好Id的字段提取规则可直接跳过该步骤
  • eval 行:核心计数逻辑,countmatches 函数会返回第一个参数(这里是原始日志内容_raw)中第二个参数(这里是lat)的出现次数
    低版本Splunk兼容写法:用split拆分后统计段数减1得到出现次数,效果完全一致:
    | eval lat_count = mvcount(split(_raw, "lat")) - 1
    
  • stats 行:按Id维度分组,汇总每个Id对应的lat总出现次数,输出结果和你预期的格式完全匹配

可选优化

如果要避免误统计包含lat的其他字符串(比如字段名latitude),可以调整匹配规则为精确匹配JSON键格式:

| eval lat_count = countmatches(_raw, "\"lat\":")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 08:15:06