Jenkins to Splunk通过将不同的源类型映射到不同的源(文件)来发送文件

问题描述 投票:0回答:1

我需要将文件(例如XML和CSV)从Jenkins发送到Splunk。为此,我已经在下面整合了Jenkins和Splunk]

1)Splunk中的Jenkins应用程序(Jenkins的Splunk应用程序)

2)Jenkins中的Splunk插件

在Jenkins中,我已经像这样配置了“自定义元数据”

[[数据源->'日志文件',配置项->'源类型',值->“ custom_xml_sourcetype”] [数据源->“日志文件”,配置项目->'来源类型',值->'csv']

在Splunk中,索引文件(例如a.xml和b.csv)具有相同的源类型->“ custom_xml_sourcetype”。理想情况下,两者都需要映射到确切的源类型。应该是这样的

a.xml->'custom_xml_sourcetype'

b.csv->'csv'

但是,它是这样映射的,

a.xml->'custom_xml_sourcetype'

b.csv->'custom_xml_sourcetype'

不确定如何将源类型映射到源(文件)。也没有可用的作业级别配置信息。

我的要求非常简单,可以从jenkins构建工件生成不同的文件,并使用不同的源类型进行合并。Jenkins被配置为Master-> Slave setup。

在Jenkin的Splunk插件应用程序中是否有可能,还是我应该采用其他方法?

非常感谢。

jenkins splunk
1个回答
0
投票

无法将不同的源类型(例如.xml)从Jenkins索引到Splunk,但是由于其自身的局限性,也可以再次索引.csv或.json格式的key:value对。

这是由于splunk中的HEC,它仅侦听一种源类型,它也必须位于key:value对中。 Jenkin的Splunk插件是一种代理,它通过解析jenkin系统中的文件来转发数据,如果文件的数据是key:value对,则它们将通过HEC ex通过Json paylod中的事件密钥发送到SPLUNK: {“事件”:“键:值”}。

但是如果文件的数据不是key:value对,例如:xml,那么不能保证确切的key:value对将从xml中提取出来。因此,对于非key:value对源类型,jenkin的splunk插件代理提取数据将失败。

[基本上,Splunk的HEC在使用非键:值对源类型内容时具有有限的用例。通过这种方式,Jenkins与Splunk之间的通信将不会对索引具有不同文件格式的所有文件有用。

解决方案:在詹金斯方面需要有转换脚本,以将所有非key:value对转换为key:value对。这将有助于将适当的数据索引到splunk中,但同样不能将其映射到多个源类型。

© www.soinside.com 2019 - 2024. All rights reserved.