Upgrade to using hashicorp/go-metrics@v0.5.4#22080
Conversation
a5be83e to
93e29a7
Compare
5667a37 to
73df053
Compare
73df053 to
2d179da
Compare
This also requires bumping the dependencies for: * memberlist * serf * raft * raft-boltdb/v2 Tidy up other submodules Fixup a few ci jobs where build tag was missing. Add tagging to the lint-enums job Update linting rules to disallow usage of armon/go-metrics Also prevent usage of hashicorp/go-metrics/compat as that should only be used by libraries. Dont use the deprecated -tags option to enumcover Try to get the tags passed through correctly. Fix serf config cloning test due to new field present in the config. Attempt to get build tags flowing properly when utilizing gotestsum splitting. More quoting One more attempt at passing build tags in GOFLAGS Add tags to the golden file checker Sync backport-assistant version with ent Some more build tag tweaking Sync with Ent Use comma separated build tags Also fixup the compat test image selection Only tack on the hashicorpmetrics tag if its not in the tag list already
2d179da to
1242cbd
Compare
|
What can we do to get this landed? Downstream transitive consumers are blocked due to the repo ownership change. |
|
This pull request has been automatically flagged for inactivity because it has not been acted upon in the last 60 days. It will be closed if no new activity occurs in the next 30 days. Please feel free to re-open to resurrect the change if you feel this has happened by mistake. Thank you for your contributions. |
|
Giving this a nudge - I'm unable to update to v0.5.4 of |
|
go: github.com/armon/go-metrics@v0.4.2: parsing go.mod: |
|
This pull request has been automatically flagged for inactivity because it has not been acted upon in the last 60 days. It will be closed if no new activity occurs in the next 30 days. Please feel free to re-open to resurrect the change if you feel this has happened by mistake. Thank you for your contributions. |
|
Closing due to inactivity. If you feel this was a mistake or you wish to re-open at any time in the future, please leave a comment and it will be re-surfaced for the maintainers to review. |
Description
Migrate Consul to using
hashicorp/go-metricsinstead ofarmon/go-metrics.This necessarily includes updates to the following dependencies:
raftraft-boltdb/v2raft-walmemberlistserfAll of those libraries were previously updated to support compatibility with
hashicorp/go-metrics. In order to get the metrics for those libraries flowing out tohashicorp/go-metrics, I added thehashicorpmetricsbuild tag.This should be a non-functional change but unblocks future go-metrics updates.
I also bumped the
serfandmemberlistdependencies within theapimodule. While that module doesn't cause any metrics to be invoked, I wanted to ensure only the latest versions with metrics compatibility would be directly relied upon.Note that
armon/go-metricsstill appears as an indirect dependency in go.mod. This is because of a newcompatpackage withinhashicorp/go-metricsthat allow for swapping the underlying metrics module used betweenarmon/go-metricsandhashicorp/go-metricswith the build tag.Testing & Reproduction steps
make dev-buildmkdir datacurl localhost:8500/v1/agent/metricsand then verify metrics are present fromraft,raft-boltdb/v2,memberlistandserf.rm -rf data/*to wipe the data directorycurl localhost:8500/v1/agent/metricsand then verify metrics are present fromraft,raft-wal,memberlistandserf.In my own testing I have verified that at least one metric from all the affected libraries are still emitted correctly along with normal Consul metrics.
Note the agent is run twice with the different raft log stores to ensure both metrics from boltdb or the WAL are being emitted
PR Checklist