chore(deps): bump micrometer to 1.17.0 and align prometheus-metrics-model to 1.7.0#24213
Open
stian-sandvold wants to merge 1 commit into
Open
Conversation
…odel to 1.7.0 micrometer-registry-prometheus 1.17.0 pulls the io.prometheus client_java train (prometheus-metrics-core/-exposition-formats/-config) up to 1.7.0. prometheus-metrics-model is pinned separately in dependencyManagement, so a lone micrometer bump leaves it at 1.4.3 and cascades prometheus-metrics-config down to 1.4.3, while exposition-formats stays at 1.7.0 -> the /api/metrics scrape fails at runtime with NoSuchMethodError (PrometheusProperties.getOpenMetrics2Properties()). Bump prometheus-metrics-model.version 1.4.3 -> 1.7.0 to keep the whole io.prometheus train aligned, same as the 1.16.5 alignment in dhis2#24043. Verified the aligned stack binds the JVM metrics and scrapes cleanly.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #24213 +/- ##
============================================
+ Coverage 69.04% 69.16% +0.12%
+ Complexity 709 707 -2
============================================
Files 3684 3688 +4
Lines 141646 142908 +1262
Branches 16453 16631 +178
============================================
+ Hits 97797 98847 +1050
- Misses 36243 36431 +188
- Partials 7606 7630 +24
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Bumps
micrometer.version1.16.5 → 1.17.0 andprometheus-metrics-model.version1.4.3 → 1.7.0 together. Supersedes the version-only dependabot PR #24180.Why both properties move together
micrometer-registry-prometheuspulls theio.prometheusclient_java train transitively, but we pinprometheus-metrics-modelseparately independencyManagement. The two have to stay on the same train:If only
micrometer.versionmoves,prometheus-metrics-modelstays at 1.4.3 and dragsprometheus-metrics-configdown to 1.4.3, whileprometheus-metrics-exposition-formatsresolves to 1.7.0. At scrape time that mismatch throws:java.lang.NoSuchMethodError: io.prometheus.metrics.config.PrometheusProperties.getOpenMetrics2Properties()→
GET /api/metricsreturns HTTP 500. Same failure mode as the 1.16.5 alignment in #24043, just a wider gap (the prometheus train jumps three minors, 1.4.3 → 1.7.0).Bumping
prometheus-metrics-modelto 1.7.0 keeps the wholeio.prometheustrain aligned (model = core = config = exposition-formats = 1.7.0). It's the onlyio.prometheusversion pin we set, anddhis-support-systemdeclares it without a version(relies on the managed pin), so aligning the pin is the minimal correct fix.
Verification
Reproduced both states against the registry/scrape wiring (
PrometheusMeterRegistry+ the JVM/system meter binders, thenscrape()):NoSuchMethodError getOpenMetrics2Properties()(scrape dead)MetricsEndpointTest/ theapi-testjob is the authoritative check here.Notes
micrometer-registry-prometheus-simpleclientstill ships at 1.17.0, so theTextFormatusage inPrometheusScrapeEndpointControlleris unaffected.prometheus-metrics-modelpin checked too.