-
Notifications
You must be signed in to change notification settings - Fork 8.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
[Fleet] Add ?full
option to get package info endpoint to return all package fields
#144343
Conversation
943801f
to
327f13b
Compare
?full
option to get package info endpoint to return all package fields
Pinging @elastic/fleet (Team:Fleet) |
Do we have any concerns on the performance of getting full package info and remove caching of package registry info? |
@elasticmachine merge upstream |
@juliaElastic I've been doing some performance testing today and added a testing script. For getting full package info vs getting from the package registry here is the comparison over the 131 non-experimental packages. I think the results are acceptable considering after the first call the results are cached. I am looking to see if there are any quick wins to be had: Average EPM time (GET /pkg/version: 0.37458015267175565s Top 3 worst response times for the ?full endpoint are:
(Note: also looking into why the cached times are so variable, I was expecting them to be consistently quick) |
786e249
to
e9a6136
Compare
💚 Build Succeeded
Metrics [docs]Async chunks
Page load bundle
Unknown metric groupsESLint disabled in files
ESLint disabled line counts
Total ESLint disabled count
History
To update your PR or re-run it, just comment with: cc @hop-dev |
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, haven't tested locally.
Hi @hop-dev, I think this change broke the add APM integration page in fleet. Screen.Recording.2022-11-10.at.14.31.43.mov |
Summary
Closes #143198.
Add
?full=true
parameter to the get packager info endpoint. This param returns the package info from the parsed archive, meaning paramaters such asdata_streams.x.elasticsearch.source_mode
(which is not supported by the EPR API) will now be returned from the kibana API.This new param is only used by the create/edit package policy pages as they need the detailed data stream information.
I have made it so that we only ever cache the "full" package info, not the info from the package registry. In the future I want to make it clearer which package info is full and which is not #144640.
Checklist
Delete any items that are not applicable to this PR.