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!

Detecting Remote Code Executions With the Splunk Threat Research Team

REGISTER NOWRemote code execution (RCE) vulnerabilities pose a significant risk to organizations. If ...

Observability | Use Synthetic Monitoring for Website Metadata Verification

If you are on Splunk Observability Cloud, you may already have Synthetic Monitoringin your observability ...

More Ways To Control Your Costs With Archived Metrics | Register for Tech Talk

Tuesday, May 14, 2024  |  11AM PT / 2PM ET Register to Attend Join us for this Tech Talk and learn how to ...