-
Notifications
You must be signed in to change notification settings - Fork 1
Description
Proposal description:
Jenkins monitoring plugins will provide ability to monitor the Jenkins operations. It will give high-level overview of how the jobs are performing, the current status of all jobs that have run in the past days.
The plugin will be built using a generic frame so other plugins can be created using the same framework. The plugin should be able to send metrics to different target namely kafka, elasticsearch, opensearch. The plugin uses Jenkins API to retrieve all information,
This can be readily consumed by Snappyflow and Telegraf. This plugin does not require a plugin on Jenkins and it makes use of Jenkins API to retrieve all the information needed.
Key pain points or opportunity details
• Datadog, New relic has plugin to monitor jenkins but they are all plugin on Jenkins.
• Our plugin provides an overview of Jenkins jobs which usually takes much longer time for checking the status by logging into Jenkins portal.
Objective of the proposed project
Following are the deliverables for the proposed project:
-
Generic framework to create new plugins.
-
Jenkins monitoring plugin that collects below metrics.
• Total number of Jenkins jobs that has run in the past, jobs being currently executing, and jobs created but not build. • Total number of nodes/Active nodes in Jenkins. • Time completion of successful builds. • Total number of queued jobs. • Artifacts generated by jobs.
Existing alternatives & why I think they are not enough (with links to those projects)
• We have existing alternative solution present like Monitoring Jenkins with Datadog, Newrelic and monitoring with Prometheus and Grafana. (https://www.jenkins.io/doc/book/system-administration/monitoring/). These plugins are jenkins integrate plugins. Cannot be used to send data to targets other than datadog/grafana.
Ballpark effort estimate (X engineers for Y Months)
• 1 Engineers for 2 months.