-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add #1123 metrics to Flux
#1183
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1183 +/- ##
============================================
+ Coverage 83.44% 83.98% +0.53%
- Complexity 3674 4496 +822
============================================
Files 342 349 +7
Lines 28206 29807 +1601
Branches 5285 5451 +166
============================================
+ Hits 23537 25032 +1495
- Misses 3077 3170 +93
- Partials 1592 1605 +13
Continue to review full report at Codecov.
|
cd7ecc7
to
c0f332a
Compare
Given how frequent or transverse this could be, we should add microfusion support as well. |
Should metrics for Schedulers be in a separate PR ? |
Yes I think it would make sense to consider this a MVP and fine tune meters and/or add instrumentation of schedulers in another PR
I'm on it 👍 |
In particular, the counters for error/complete/cancel are removed in favor of a tag on the subscribeToTermination timer, allowing for a drill-down-and-count approach. Tags (in the reactor sense) and sequence name are discovered at assembly time and injected as micrometer tags.
A Gauge with the same name and tags cannot wrap multiple AtomicLongs. A counter is more appropriate, but it cannot be decreased. It makes far less sense for a "generic" application-level point of view, so it is only activated when the Flux has been named.
broken: due to Gradle/IntelliJ integration, IntelliJ thinks micrometer is on all tests classpath as soon as it discovers metricsTest is a test sourceSet. On the other hand, if it doesn't recognize it as a test sourceSet, the code is marked as production which is also undesirable...
…sspath" This reverts commit f7b1124
The aim is to delay any explicit use of Micrometer types until subscription, so that the operator can still be instantiated even though Micrometer isn't on the classpath.
TODO:
|
work in progress first MVP