Jenkins Remoting Monitoring

Goal: Support monitoring of Jenkins remoting networking with open source monitoring tools such as Prometheus, Grafana, etc.

Status: Active

Team

Details

In Jenkins, we have a remoting module, which implements a communication layer in the Jenkins automation server. It’s being primarily used for controller ⇔ agent interaction. The purpose of this project is to develop a plugin to support the monitoring of remoting systems with available open source monitoring tools, e.g. Prometheus, Grafana, OpenTelemetry, etc.

Jenkins project already has a Metrics Plugin which allows gathering metrics and exposing them to metrics collectors. There is also a Prometheus Metrics which exposes metrics for Prometheus. Same for Grafana, there are ways to expose metrics using existing plugins (blogpost). Nevertheless, there are various things which could be done in this GSoC project:

  • Implement a plugin which collects agent metrics and exposes them to the Metrics Plugin API consumers

  • Implement new plugin or CLI tooling, which would allow exposing monitoring endpoints on Jenkins agents. Existing plugins do it only on the master side, and it is not enough to troubleshoot networking issues

The development of this plugin can benefit systembenefit to system admins who often manage Jenkins on a daily basis. Such integration with monitoring tools will help system admins to faster address the issues, bottlenecks when working with Jenkins. Therefore, this plugin will help to provide a better monitoring experience for system admins in using Jenkins as their daily automation pipeline.

Chat

We use the #gsoc-jenkins-remoting-monitoring channel in the CDF Slack workspace. How to join.

Office hours

Office hours are scheduled each Thursday at 14:00 UTC, with regular meeting notes available for anyone to read.

Links

Discuss