-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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 metrics to track controller segment download and upload requests in progress #9258
Add metrics to track controller segment download and upload requests in progress #9258
Conversation
b3d67d5
to
166f5bb
Compare
ddab727
to
7c2ae1a
Compare
Codecov Report
@@ Coverage Diff @@
## master #9258 +/- ##
============================================
+ Coverage 68.75% 69.96% +1.20%
- Complexity 4755 5011 +256
============================================
Files 1859 1860 +1
Lines 99129 99152 +23
Branches 15077 15080 +3
============================================
+ Hits 68161 69371 +1210
+ Misses 26076 24864 -1212
- Partials 4892 4917 +25
Flags with carried forward coverage won't be shown. Click here to find out more.
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So, we should also add the realtime segment upload to the metric.
Done in the class: LLCSegmentCompletionHandlers
This class is invoked by the servers to complete a realtime segment
MISSING_CONSUMING_SEGMENT_MAX_DURATION_MINUTES("missingSegmentsMaxDurationInMinutes", false), | ||
|
||
// Number of in progress segment downloads | ||
CONTROLLER_SEGMENT_DOWNLOADS_IN_PROGRESS_COUNT("segmentDownloadsInProgressCount", true), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe remove CONTROLLER_
prefix? It is in ControllerGauge
, emitted by the controller, so we are fine to remove the prefix? Also, maybe remove the _COUNT
suffix also?
Metric names are getting long....
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point, I've dropped both the CONTROLLER_
prefix and the _COUNT
suffix for readability.
I have also tagged the segmentUpload
method in LLCSegmentCompletionHandlers
for tracking.
7c2ae1a
to
50b6063
Compare
This change tracks the number of in progress segment download and upload requests currently being processed by the controller via their respective Gauge metrics segmentDownloadsInProgress and segmentUploadsInProgress. These two metrics are useful to track the number of in-flight operations in large clusters, where a large number of concurrent uploads/downloads may bring down a shared controller.
This change also introduces a generic JAX-RS annotation-based mechanism that can be reused to track in-flight request metrics of other types in the future. See InflightRequestMetricsInterceptor.