Skip to content
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

Release v3.14.0 #341

Merged
merged 28 commits into from
Jul 12, 2021
Merged

Release v3.14.0 #341

merged 28 commits into from
Jul 12, 2021

Conversation

nr-swilloughby
Copy link
Contributor

This PR creates release 3.14.0.

3.14.0

Fixed

  • Integration tags and go.mod files for integrations were updated so that pkg.go.dev displays the documentation for each integration correctly.
  • The nrgrpc server integration was reporting all non-OK grpc statuses as errors. This has now been changed so that only selected grpc status codes will be reported as errors. Others are shown (via transaction attributes) as "warnings" or "informational" messages. There is a built-in set of defaults as to which status codes are reported at which severity levels, but this may be overridden by the caller as desired. Also supports custom grpc error handling functions supplied by the user.
    • This is implemented by adding WithStatusHandler() options to the end of the UnaryServerInterceptor() and StreamServerInterceptor() calls, thus extending the capability of those functions while retaining the existing functionality and usage syntax for backward compatibility.
  • Added advice on the recommended usage of the app.WaitForConnection() method. Fixes [https://github.com/Add advice on correct usage of WaitForConnection function. #296](Issue Add advice on correct usage of WaitForConnection function. #296)

Added

  • Added a convenience function to build distributed trace header set from a JSON string for use with the AcceptDistributedTraceHeaders() method. Normally, you must create a valid set of HTTP headers representing the trace identification information from the other trace so the new trace will be associated with it. This needs to be in a Go http.Header type value.
    • If working only in Go, this may be just fine as it is. However, if the other trace information came from another source, possibly in a different language or environment, it is often the case that the trace data is already presented to you in the form of a JSON string.
    • This new function, DistributedTraceHeadersFromJSON(), creates the required http.Header value from the JSON string without requiring manual effort on your part.
    • We also provide a new all-in-one method AcceptDistributedTraceHeadersFromJSON() to be used in place of AcceptDistributedTraceHeaders(). It accepts a JSON string rather than an http.Header, adding its trace info to the new transaction in one step.
    • Fixes [https://github.com/nrgrpc integration is now reporting non-errors as errors in the UI #331](Issue nrgrpc integration is now reporting non-errors as errors in the UI #331)

Changed

  • Improved the NR AWS SDK V2 integration to use the current transaction rather than the one passed in during middleware creation, if nil is passed into nrawssdk-v2.AppendMiddlewares. Thanks to @HenriBeck for noticing and suggesting improvement, and thanks to @nc-wittj for the fantastic PR! #328

Support Statement

New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.

nc-wittj and others added 28 commits June 7, 2021 11:48
update integration tags, add go.mod and license for nrb3
implemented JSON distributed trace converter
v3/integrations/nrawssdk-v2: Grab the NR Transaction from the Context when txn is not set
example change to support PR #328, plus CHANGELOG.md
added advice on usage of WaitForConnection() call
Enhanced handling of grpc errors (issue #331)
updated CHANGELOG for 3.14.0 release
@nr-swilloughby nr-swilloughby self-assigned this Jul 12, 2021
@nr-swilloughby nr-swilloughby added this to Triage in Go Engineering Board via automation Jul 12, 2021
@nr-swilloughby nr-swilloughby merged commit d628ce8 into master Jul 12, 2021
Go Engineering Board automation moved this from Triage to Done Jul 12, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants