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

如何配置SysFlow向Splunk发送可自动解析的JSON事件

解决SysFlow事件发送至Splunk时无法自动识别JSON的问题

问题原因

通过syslog协议导出事件时,SysFlow会自动添加包含时间、主机、进程信息的syslog元数据前缀,导致Splunk无法直接识别后续的JSON内容。

方案1:使用SysFlow的Splunk HEC直接导出(推荐)

SysFlow支持直接向Splunk的HTTP事件收集器(HEC)发送纯JSON事件,无需经过syslog,从根源避免前缀问题。修改/etc/sysflow/pipelines/pipeline.local.json中的exporter配置:

{
  "pipeline":[
    {
     "processor": "sysflowreader",
     "handler": "flattener",
     "in": "sysflow sysflowchan",
     "out": "flat flattenerchan"
    },
    {
     "processor": "policyengine",
     "in": "flat flattenerchan",
     "out": "evt eventchan",
     "policies": "/etc/sysflow/policies/runtimeintegrity",
     "mode": "alert"
    },
    {
     "processor": "exporter",
     "in": "evt eventchan",
     "export": "splunk",
     "format": "json",
     "splunk.url": "https://<splunk-server>:8088/services/collector",
     "splunk.token": "<你的HEC令牌>",
     "splunk.index": "sysflow",
     "splunk.sourcetype": "sysflow:json"
    }
  ]
}

配置说明

  • splunk.url:替换为你的Splunk HEC端点(默认端口为8088)
  • splunk.token:在Splunk控制台生成的HTTP事件收集器令牌
  • splunk.index:指定接收事件的Splunk索引名称
  • splunk.sourcetype:设置为sysflow:json后,Splunk会自动识别并解析JSON格式

方案2:调整Syslog导出配置移除前缀(仅适用于必须使用syslog的场景)

如果需要保留syslog传输方式,可通过配置让SysFlow只输出纯JSON内容,不添加syslog头部。修改exporter配置段:

{
  "processor": "exporter",
  "in": "evt eventchan",
  "export": "syslog",
  "format": "json",
  "syslog.proto": "udp",
  "syslog.tag": "",
  "syslog.host": "splunk-server",
  "syslog.port": "514",
  "syslog.raw": true
}

关键参数说明

  • syslog.raw: 设置为true后,SysFlow会跳过syslog头部生成,直接发送纯JSON事件。需在Splunk数据源配置中,将对应sourcetype设为_json,确保Splunk自动解析。

配置验证

修改配置后重启SysFlow服务:

sudo systemctl restart sfprocessor

在Splunk中搜索目标索引,确认事件已被自动解析为JSON格式,无需额外SPL处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 20:22:54