Closed endorama closed 3 months ago
@twmb I updated the PR to use attribute.Set
and fixed the documentation. I also set this ready for review, happy to know what's your opinion!
@twmb as you've seen me moved away from relying on this monitoring plugin for the use case that spawn this contribution but I'm happy to follow along with it. I still think that it aligns better to expectations in the otel
ecosystem so I see a benefit. Let me know if you need anything on my side here and thanks for your time!
Ah, sorry, mind dropping the go.mod and go.sum changes? I bumped them to latest before 1.17.
Pinging! @endorama I can clone your repo and edit your commit a bit, I'll give it another week or so but if you drop the go.mod and go.sum changes earlier, we can merge and release yours :)
@twmb sorry for the delay! I removed the commit bumping otel (bdbb6e1
(#691)) and rebased onto master
so the branch is up to date.
Thanks for the review!
This PR follows the discussion in https://github.com/twmb/franz-go/issues/670.
I added a new struct field,
mergeConnectsMeter bool
that is manipulated byWithMergedConnectsMeter()
, to control whether to use one or 2 metrics to track connection successes/errors.By default is set to
false
to retain current behaviour.When set to
true
it disables the creation ofmessaging.kafka.connect_errors.count
metric and follows a different path inMeter.OnBrokerConnect
. There is some repetition as I wanted to avoid additional allocations when manipulating otel attributes (unfortunately Attribute Sets don't offer a way to add/remove elements from the set).I added tests for the previous and new behaviour.
Let me know what you think, happy to adjust based on your feedback and thank you for your review!