-
Notifications
You must be signed in to change notification settings - Fork 535
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 throughput and SLO metrics in the tags and tag values endpoints #4148
Add throughput and SLO metrics in the tags and tag values endpoints #4148
Conversation
52f9cd9
to
f33481f
Compare
d0cb5e9
to
8a0fd3e
Compare
Looks like a lot of great work! Do we need to add docs for this? |
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.
99% lgtm. Really just the one last question about log format, which is actually been important lately as we are making all these improves to the read path.
require.Greater(t, inspectedBytes, uint64(300)) | ||
} | ||
|
||
type searchTagsV2Response struct { |
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.
What is the rationale for using the custom types for this test? If we can use the real proto types it seems best.
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.
I was seeing json: cannot unmarshal string into Go struct field MetadataMetrics.metrics.inspectedBytes of type uint64
, see this CI run
json response will marshal the metrics into a string, so using this searchTagsV2Response
to unmarshal the metrics and assert them.
I will update the config page and API docs, that's the only docs change required. |
c0e5434
to
05f847c
Compare
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.
Approving the doc additions. Thank you for updating the docs!
b0567e6
to
5e799b2
Compare
890f5b8
to
006c6fb
Compare
cleanup comment from proto file
ignore microservice e2e test runs dirs
cleanup and update ingester tests cleanup and fix querier metrics code
fix lint and test fix the api test metric assertion
Update Manifest Update api docs response examples
docs sugesstion from review
006c6fb
to
88909a8
Compare
What this PR does:
propagate the bytes read from the storage layer to the frontend, and use bytes read to compute throughout, and use that in SLO computation for metadata endpoints.
metadata SLO thresholds can be configured via
metadata_slo
config.we will also return the
metrics
in the response of all the metadata endpoints:/search/tags
/v2/search/tags
/search/tag/<tagName>/values
/v2/search/tag/<tagName>/values
here is what the it looks like in the response:
we return
"metrics": {}
when response is empty or only containsintrinsics
it will also expose these new label to existing metrics with
op="metadata"
labelMetrics
Which issue(s) this PR fixes:
Fixes #
Checklist
CHANGELOG.md
updated - the order of entries should be[CHANGE]
,[FEATURE]
,[ENHANCEMENT]
,[BUGFIX]