https://github.com/slxiao/pipeline-monitor-plugin
👓 Jenkins plugin to monitor pipeline build, stage, testing and coverage data
https://github.com/slxiao/pipeline-monitor-plugin
Last synced: 7 months ago
JSON representation
👓 Jenkins plugin to monitor pipeline build, stage, testing and coverage data
- Host: GitHub
- URL: https://github.com/slxiao/pipeline-monitor-plugin
- Owner: slxiao
- Created: 2019-10-18T09:56:06.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T20:22:22.000Z (over 2 years ago)
- Last Synced: 2025-02-28T10:52:06.778Z (7 months ago)
- Language: Java
- Homepage:
- Size: 199 KB
- Stars: 9
- Watchers: 2
- Forks: 2
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Pipeline monitor plugin
`Pipeline monitor plugin` is an Jenkins [plugin](https://plugins.jenkins.io/) that is capable of automatically collecting pipeline build, stage, testing and coverage data and forward such key data to remote center (e.g., elasticsearch) for further exploitation.
# How to install
- Generate the `pipeline-monitor.hpi` file under `target` directory with command: `mvn clean package`
- Copy the generated `hpi` file to the directory `$JENKINS_HOME/plugins`
- Restart jenkins# How to configure
`pipeline-monitor-plugin` is configured at Jenkins global configuration page (Jenkins home -> Manage Jenkins -> Configure System).You can specify whether to enable this plugin, how to connect to Elasticsearch, and etc.

One example data is as below. It shows that the result of pipeline stage `checkout` of job `test-pipeline` is `CompletedSuccess` and the duration is `50ms`.
```json
{
"_index": "test-jenkins",
"_type": "job-data",
"_id": "Ks9Dp24BMQms4qjvQk0n",
"_source": {
"PipelineStageStatus": {
"jenkinsUrl": "http://127.0.0.1:49001/",
"jobName": "test-pipeline",
"number": 42,
"name": "checkout",
"startTime": 1574764231812,
"result": "CompletedSuccess",
"duration": 50
},
"@timestamp": "2019-11-26T10:30:31.815+0000"
}
}
```# Key features of the plugin
- [x] Post restful messages to Elasticsearch
- [x] Collect pipeline build result
- [x] Collect pipeline stage result
- [x] Collect semi-standard xUnit test result
- [x] Collect semi-standard Cobertura test coverage result
- [ ] Collect diff coverage result (**Pending, may be a dedicated diff-coverage-plugin is preferred**)# Lisense
MIT# How to contribute
Fork the project on [Github](https://github.com/slxiao/pipeline-monitor-plugin), make your feature addition or bug fix, write tests, commit, and then send out pull request.