0.4.0
BREAKING CHANGES
-
The configuration syntax has been restructured quite a bit and some runtime flags have been moved in it as well. Refer to the updated documentation to check what you may need to update.
-
Some metrics have been renamed:
Original metric name | New metric name |
---|---|
gitlab_ci_pipeline_last_job_run_artifact_size | gitlab_ci_pipeline_job_artifact_size_bytes |
gitlab_ci_pipeline_last_job_run_artifact_size | gitlab_ci_pipeline_job_artifact_size_bytes |
gitlab_ci_pipeline_last_job_run_duration_seconds | gitlab_ci_pipeline_job_duration_seconds |
gitlab_ci_pipeline_last_job_run_id | gitlab_ci_pipeline_job_id |
gitlab_ci_pipeline_last_job_run_status | gitlab_ci_pipeline_job_status |
gitlab_ci_pipeline_last_run_duration_seconds | gitlab_ci_pipeline_duration_seconds |
gitlab_ci_pipeline_last_run_id | gitlab_ci_pipeline_id |
gitlab_ci_pipeline_last_run_status | gitlab_ci_pipeline_status |
gitlab_ci_pipeline_time_since_last_job_run_seconds | gitlab_ci_pipeline_job_timestamp |
gitlab_ci_pipeline_time_since_last_run_seconds | gitlab_ci_pipeline_timestamp |
-
On top of being renamed, the
.*time_since.*
metrics have been also converted to timestamps.
You will need to update your PromQL queries to leverage the new format. eg:time() - gitlab_ci_pipeline_timestamp
-
We now output sparse status metrics by default, if you want to revert to the default behaviour you will need to add this
statement to your config file:
defaults:
output_sparse_status_metrics: false
Added
- HA configuration capabilities using Redis (optional feature, example here)
- Push based approach leveraging pipelines & jobs webhooks (optional feature, example here)
- gosec testing
Changed
- Upgraded
urfave/cli
to v2 - Refactored the codebase to make it compliant with golang standards and more domain-driven
- Included the version of the app in the user agent of GitLab queries
- Rewritten the scheduling of the polling using
vmihailenco/taskq
- Updated the rate limiter to work globally across several workers
- Fixed an issue preventing the jobs from being updated accordingly when restarted
- Updated the example grafana dashboard with the new metrics naming
- Bumped Grafana and Prometheus versions in the example
Removed
polling_workers
configuration parameter