Getting Data In

How to send few values from jenkins pipeline to splunk and report it

sendilprakash
Explorer

Hi,

Thanks in advance for your help.

I am new to splunk and working on building few reports in splunk from Jenkins. Here is my requirement:

I have only one jenkins pipeline job which serves as deploy job for any release (example windows 7, windows 8, windows 10). Now I want to report the latest build ran for any release. I have this release value in a variable in jenkins job. Now how do I pass this release information to splunk along with other values. Currently I can see jenkins jobname, job number, url, etc.. values in splunk . Please find below attachment. I want to show 'Release' as field in splunk so that I can use it in query.

alt textalt text

0 Karma
1 Solution

sendilprakash
Explorer

I answer my own question:

By using splunkins.send(msg) I am able to pass on my application,build and release details as key value pair to splunk and in splunk I can see each parameter I send from jenkins as a field in splunk and I can build my dashboards.

Here is my pipeline script to send my application,build and release details to splunk

stage('send_input_start')
{
    jobtype = "build"
    branch = "dev"
    application = "My Application"
    component = "My Component"
    release = "My Release"
    jstatus = "Started"
    jresult = "Building"
    msg = "BNum="+BUILD_NUMBER+",JName="+JOB_NAME+",AppName="+application+",CompName="+component+",BranchName="+branch+",RelNumber="+release+",JobStatus="+jstatus+",JobResult="+jresult+",JType="+jobtype
    splunkins.send(msg)
}

In the above code ensure that you append all your build, application and release details in the same way to variable msg(in my case). Otherwise splunk is not recognizing them as fields.

on the splunk side here is the query to see the data that you sent.

sourcetype="text:jenkins" BNum=10 AppName="My Application" RelNumber="My Release"

View solution in original post

sendilprakash
Explorer

I answer my own question:

By using splunkins.send(msg) I am able to pass on my application,build and release details as key value pair to splunk and in splunk I can see each parameter I send from jenkins as a field in splunk and I can build my dashboards.

Here is my pipeline script to send my application,build and release details to splunk

stage('send_input_start')
{
    jobtype = "build"
    branch = "dev"
    application = "My Application"
    component = "My Component"
    release = "My Release"
    jstatus = "Started"
    jresult = "Building"
    msg = "BNum="+BUILD_NUMBER+",JName="+JOB_NAME+",AppName="+application+",CompName="+component+",BranchName="+branch+",RelNumber="+release+",JobStatus="+jstatus+",JobResult="+jresult+",JType="+jobtype
    splunkins.send(msg)
}

In the above code ensure that you append all your build, application and release details in the same way to variable msg(in my case). Otherwise splunk is not recognizing them as fields.

on the splunk side here is the query to see the data that you sent.

sourcetype="text:jenkins" BNum=10 AppName="My Application" RelNumber="My Release"

Get Updates on the Splunk Community!

Build Scalable Security While Moving to Cloud - Guide From Clayton Homes

 Clayton Homes faced the increased challenge of strengthening their security posture as they went through ...

Mission Control | Explore the latest release of Splunk Mission Control (2.3)

We’re happy to announce the release of Mission Control 2.3 which includes several new and exciting features ...

Cloud Platform | Migrating your Splunk Cloud deployment to Python 3.7

Python 2.7, the last release of Python 2, reached End of Life back on January 1, 2020. As part of our larger ...