Improve experience when sending data times out. #163
Merged
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.
This pre-release branch does two things to improve the agent experience when sending data to the New Relic backend times out.
First, instead of dropping data on the floor, we will save it and attempt to resend it with the next harvest cycle. Note that because the agent has internal limits to the amount of data it holds, if the timeouts happen for a prolonged period and your application is collecting a lot of events, some could still get dropped.
Second, the agent will stop using the
http.DefaultTransport
for communication with the New Relic backend. This change will help address golang/go#33006 which can cause all outbound requests using the same transport to hang, irregardless of the host they are attempting to connect with.Aha! Link: https://newrelic.aha.io/features/GO-122