Check for XRAY_PATCH_AWS_SDK env var, and do not patch aws_sdk if unset #61
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I'll open an issue on aws-xray-sdk if other people agree with my conclusion.
Since applying the last round of govuk_app_config upgrades, asset-manager and publishing-api have been using far more memory:
The memory shoots up as soon as the app is deployed, so I believe this is an overhead imposed at initialisation-time, rather than some sort of leak which manifests when requests are made.
After doing some debugging (commenting out lines of code and crossing my fingers), I narrowed this down to having X-Ray patch the
aws_sdk
gem. If that gem is patched, the problem occurs; if it is not, even ifnet_http
is patched, the memory usage seems much closer to before.It's a shame to lose tracking for stuff which goes through
aws_sdk
, but that's only a small amount of stuff (asset uploads from the asset-manger, and nothing(!) from the publishing-api), and I think we can assume that AWS is not the bottleneck in our architecture.Trello card