The Jenkins plugin enhances the ability to monitor Jenkins operations, providing a comprehensive perspective on nodes by collecting node information, metrics, event reports, job performance data, and their real-time statuses.
This plugin facilitates automated forwarding of metrics and service checks to APM Snappyflow (leveraging Elasticsearch and Kafka). It simplifies the process of gaining insight into the Jenkins CI/CD pipeline in four steps:
Gathering Data from Jenkins.
Indexing and Storing Data in Snappyflow (utilizing Elasticsearch and Kafka).
Visualization through Snappyflow Dashboards.
To collect the metrics of the plugin it is necessary to have the below details.
APM host URL and Port.
Create a project and application in SnappyFlow APM and generate profile key. If you've already created these, you can utilize the existing information.
Snappyflow APM requires the auth token, kafka path and kafka topic details (The SnappyFlow team will provide these details).
Steps to Add SnappyFlow Plugin
Open the Jenkins dashboard and select
In the Plugins section, go to Available Plugins and search
Maplelabs APMoption and install the plugin.
Once the installation is complete, restart Jenkins.
Steps to Add plugin configuration
To configure the SnappyFlow Jenkins plugin:
Go to the Manage Jenkins > System Configuration section.
In the System Configuration section, select the
In the System window, scroll down and go to APM Maplelabs Plugin section and add the following details:
Give the details of Host:
Target url, Port:
Port numberand Protocol:
Protocol used for communication details.
Provide the snappyflow details like
Snappyflow Project Name,
Snappyflow Application Name,
SnappyFlow Instance Nameand
SnappyFlow Elasticsearchand give following details:
ES User Name,
Check the check boxes of Enable Event Reporting and Enable Metric Reporting. Give a Metrics Reporting Interval in minutes.
The data will be shown in SnappyFlow dashboard after the time interval mentioned in the Jenkins.
If any change in the reporting interval is made, Jenkins must be restarted to apply the changes.
View Jenkins Metrics
Follow the below steps to view the metrics collected from Jenkins.
- Go to the Application tab in SnappyFlow and navigate to your Project > Application > Dashboard.
- You can view the APIGateway metrics in the Metrics section.
Once the configuration is complete, the plugin will be automatically detected within the Metrics section. However, if the plugins are not detected, you can import template to view the corresponding metrics and events.
- To access the unprocessed data gathered from the plugins, navigate to the Browse data section and choose the
|jobMetrics, nodeMetrics, systemMetrics
|Collects metrics from Jenkins.
|jobEvents, systemEvents, securityEvents
|Collects event information from Jenkins.
|Total No. of projects on the Jenkins Instance.
|Total Plugins Installed on Jenkins Instance.
|Count of active plugins.
|Count of failed plugins.
|Count of inactive plugins.
|Count of updatable plugins.
|Name of the Node.
|No. of executors on the node.
|No. of free executors.
|No. of inUse executors.
|Connect Time of this Node.
|Total number of swap space in GB.
|Available swap space in GB.
|Total physical memory of the system, in GB.
|The available memory of the system's total physical memory, in GB.
|The path that was checked.
|Available Disk size in GB.
|Monitors the disk space of "/tmp" path.
|Available size of "/tmp" in GB.
|Computes the average response time, by taking the time out into account.
|Discovers the architecture of the system.
|Total Nodes available.
|No. of items in queue
|No. of items stuck in queue starving for an executor for too long
|No. of items waiting the executor to become available
|No. of items blocked because another build is in progress, required Resources are not available or otherwise blocked by Queue.Task.isBuildBlocked()
|No. of items currently pending execution
|No. of jobs started (History of jobs)
|No. of jobs aborted
|No. of jobs completed
|Notifies the start of a build.
|Notifies the completion & status of a build.
|Called right after a computer went offline.
|Indicates that the computer was marked as temporarily offline by the administrator.
|Indicates that the computer was marked as temporarily online by the administrator.
|Called when an agent attempted to connect via ComputerLauncher but it failed.
|Notifies User creation.
|Fired when a user was successfully authenticated using credentials.
|Fired when a user tried to authenticate but failed.
|Fired when a user has logged in.
|Fired when a user has failed to log in.
|Fired when a user logs out.
Enable Alerts and Notifications
To set alerts and notifications for Jenkins plugin click here.