This is a Jenkins Plugin which allows users to send custom events to new relic insights.
Set up a "New Relic Insights Key" credential
Add key value data points to submit with a custom event.
eventType key is required
Two options exist for sending data with a custom event in a scripted pipeline.
node {
// assemble key value keyValues points
def secrets = [
[$class: 'KeyValue', key: 'eventType', value: 'test_deployment'],
[$class: 'KeyValue', key: 'appId', value: '888']
]
// call build step with key value keyValues points
step([$class: 'NewRelicInsights',
credentialsId: '291ff5f2-a93f-4d5a-8e56-a43d61475fc7',
keyValues: secrets])
}
node {
// a simpler option for pipelines
def json = [eventType: 'test_deployment', appId: '888']
// call build step with map
step([$class: 'NewRelicInsights',
credentialsId: '291ff5f2-a93f-4d5a-8e56-a43d61475fc7',
json: json])
}
Insights only accepts key-value pairs, not map/object or array values. Only floats and strings are supported data types. See Insights Docs for more information.
All of the above examples would appear as below in insights:
Deployment Metrics
For more information, please see new relic insights.
Here is a list of maven tasks that I use on this project:
- mvn verify: runs all tests
- mvn package: creates the
hpi
plugin archive to be used with Jenkins - mvn hpi:run -Djetty.port=8090: runs the Jenkins server (with the plugin pre-loaded) on port 8090
This project is distributed under the MIT license.
- Seperate out eventType from generic keyValues object
- Support variables in freestyle
- Support pipeline
- Surface a cleaner way to pass the keyValues via pipeline
- Implement proper build wrapper pipeline step
newrelicInsights credentialsId: '', keyValues: keyValues, json: json
https://github.com/jenkinsci/newrelic-deployment-notifier-plugin