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

如何在Splunk中用rex命令从_raw日志提取自定义错误信息?

在Splunk中提取日志中的错误类型

针对你提供的日志格式,可以使用rex命令结合正则表达式,精准提取com.abc.xyz.service.exception.之后、冒号之前的可变错误类型。

核心正则与rex命令

直接在Splunk查询中添加以下rex语句:

| rex field=_raw "com\.abc\.xyz\.service\.exception\.(?<error_type>[^:]+):"

命令解释

  • field=_raw:指定从原始日志字段_raw中提取内容
  • com\.abc\.xyz\.service\.exception\.:匹配固定前缀,每个.用\转义(正则中.代表任意字符,转义后才匹配实际的点)
  • (?<error_type>[^:]+):定义捕获组并命名为error_type,[^:]+表示匹配除冒号外的任意字符,刚好覆盖所有以冒号结尾的错误类型
  • ::匹配错误类型后的冒号,确保提取范围准确

完整查询示例

如果要同时查看原始日志和提取出的错误类型,可使用如下查询:

index=你的索引 sourcetype=你的数据源类型
| rex field=_raw "com\.abc\.xyz\.service\.exception\.(?<error_type>[^:]+):"
| table _raw error_type

验证与扩展

只要错误类型始终处于com.abc.xyz.service.exception.和冒号之间,无论后续日志后缀(比如示例中的null)如何变化,这个正则都能稳定提取40种不同的错误类型,无需针对每种错误单独配置规则。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 20:48:12