Strings logged via the Go agent's built-in logger will have strings of the form license_key= changed to license_key=[redacted] before they are output, regardless of severity level, where means a sequ…
Updated support for SQL database instrumentation across the board for the Go Agent’s database integrations to more accurately extract the database table name from SQL queries. Fixes Issue #397. Update…
Updated mongodb driver version to 1.5.1 to fix security issue in external dependency. Fixes Issue #358 and Issue #370. Updated the go.mod file in the nrgin integration to require version 1.7.0 of the …
A typographical error in the nrgrpc unit tests was fixed. Fixes Issue #344. This updates the nrgrpc integration to version 1.3.1
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 grp…
Replaced the NR AWS SDK V2 integration for the v3 agent with a new version that works. See the v3/integrations/nrawssdk-v2/example/main.go file for an example of how to use it. Issues #250 and #288 ar…
Updated CHANGELOG.md release notes language, to correct typographical errors and clean up grammar. #289
Aerospike is now included on the list of recognized datastore names. Thanks @vkartik97 for your PR! #233. Added support for version 8 of go-redis. Thanks @ilmimris for adding this instrumentation! #25…
To keep up with the latest security protocols implemented by Amazon Web Services, the agent now uses AWS IMDSv2 to find utilization data. #249
When sending Serverless telemetry using the nrlambda integration, support an externally-managed named pipe
Fixed an issue that could cause orphaned Distributed Trace spans when using SQL instrumentation like nrmysql
When marking a transaction as a web transaction using Transaction.SetWebRequest, it is now possible to include a Host field in the WebRequest struct, which defaults to the empty string
When Config.Transport is nil, no longer use the http.DefaultTransport when communicating with the New Relic backend. This addresses an issue with shared transports as described in golang/go#33006. If …
Added support for adding custom attributes directly to spans. These attributes will be visible when looking at spans in the distributed tracing UI.Example:. Custom attributes added to the transaction …
Added support for Infinite Tracing on New Relic Edge.Infinite Tracing observes 100% of your distributed traces and provides visualizations for the most actionable data so you have the examples of erro…
Attribute http.statusCode has been added to external span events representing the status code on an http response. This attribute will be included when added to an ExternalSegment in one of these thre…
Added support for GraphQL in two new integrations:graph-gophers/graphql-go with v3/integrations/nrgraphgophers.Documentation. Example. graphql-go/graphql with v3/integrations/nrgraphqlgo.Documentation…
Added support for v7 of go-redis/redis in the new v3/integrations/nrredis-v7 package.Documentation. Example
Support for W3C Trace Context, with easy upgrade from New Relic trace context.Distributed Tracing now supports W3C Trace Context headers for HTTP and gRPC protocols when distributed tracing is enabled…
We are pleased to announce the release of Go Agent v3.0.0! This is a major release that includes some breaking changes that will simplify your future use of the Go Agent.
New Relic's Go agent v3.0 is currently available for review and beta testing. Your use of this pre-release is at your own risk. New Relic disclaims all warranties, express or implied, regarding the be…
This is the second release of the pre-release of Go agent v3.0. It includes changes due to user feedback during the pre-release. The existing agent in "github.com/newrelic/go-agent" is unchanged. The …
This 2.16.1 release includes a new v3.0 folder which contains the pre-release of Go agent v3.0; Go agent v3.0 includes breaking changes. We are seeking feedback and hope that you will look this over a…
The next release of the Go Agent is expected to be a major version release to improve the API and incorporate Go modules. Details available here: https://github.com/newrelic/go-agent/issues/106 We wou…
Added support for monitoring MongoDB queries with the new _integrations/nrmongo package.Example application. Full godocs Documentation. Added new method Transaction.IsSampled() that returns a boolean …
Removed the hidden "NEW_RELIC_DEBUG_LOGGING" environment variable setting which was broken in release 2.14.0
Added support for a new segment type, MessageProducerSegment, to be used to track time spent adding messages to message queuing systems like RabbitMQ or Kafka. Added new attribute constants for use wi…
Added support for HttpRouter in the new _integrations/nrhttprouter package. This package allows you to easily instrument inbound requests through the HttpRouter framework.Documentation. Example. Added…
Added new methods to expose Transaction details:Transaction.GetTraceMetadata() returns a TraceMetadata which contains distributed tracing identifiers. Transaction.GetLinkingMetadata() returns a Linkin…
Added support for Micro monitoring with the new _integrations/nrmicro package. This package supports instrumentation for servers, clients, publishers, and subscribers.Server Example. Client Example. P…
Added support for custom events when using nrlambda. Example Lambda handler which creates custom event:
Added support for gRPC monitoring with the new _integrations/nrgrpc package. This package supports instrumentation for servers and clients.Server Example. Client Example. Added new ExternalSegment fie…
Removed nrmysql.NewConnector since go-sql-driver/mysql has not yet released mysql.NewConnector
Event data is now sent to New Relic every five seconds, instead of every minute. As a result, transaction, error, and custom events will now be available in New Relic dashboards in near real time. For…
Added support for server side configuration. Server side configuration allows you to set the following configuration settings in the New Relic APM UI:Config.TransactionTracer.Enabled. Config.ErrorColl…
Added support for async: the ability to instrument multiple concurrent goroutines, or goroutines that access or manipulate the same Transaction.The new Transaction.NewGoroutine() Transaction method al…
Added support for New Relic Browser using the new BrowserTimingHeader method on the Transaction which returns a BrowserTimingHeader. The New Relic Browser JavaScript code measures page load timing, al…
Introduced Transaction.Application method which returns the Application that started the Transaction. This method is useful since it may prevent having to pass the Application to code that already has…
Added support for Echo in the new nrecho package.Documentation. Example. Introduced Transaction.SetWebResponse(http.ResponseWriter) method which sets the transaction's response writer. After calling t…
The Transaction parameter to NewRoundTripper and StartExternalSegment is now optional: If it is nil, then a Transaction will be looked for in the request's context (using FromContext). Passing a nil t…
Distributed tracing lets you see the path that a request takes as it travels through your distributed system. By showing the distributed activity through a unified view, you can troubleshoot and under…
The End() functions defined on the Segment, DatastoreSegment, and ExternalSegment types now receive the segment as a pointer, rather than as a value. This prevents unexpected behaviour when a call to …
Added support for Cross Application Tracing (CAT). Please refer to the upgrading section of the guide for more detail on how to ensure you get the most out of the Go agent's new CAT support. The agent…
Added new RecordCustomMetric method to Application. This functionality can be used to track averages or counters without using custom events. See Custom Metric Documentation. Fixed import needed for l…
Added support for github.com/gin-gonic/gin in the new nrgin package.Documentation
Fixed incorrect metric rule application when the metric rule is flagged to terminate and matches but the name is unchanged. Segment.End(), DatastoreSegment.End(), and ExternalSegment.End() methods now…
Added support for gorilla/mux in the new nrgorilla package.Documentation. Example
Added support for custom error messages and stack traces. Errors provided to Transaction.NoticeError will now be checked to see if they implement ErrorClasser and/or StackTracer. Thanks to @fgrosse fo…
Added support for slow query traces. Slow datastore segments will now generate slow query traces viewable on the datastore tab. These traces include a stack trace and help you to debug slow datastore …
Added a timeout parameter to the Application.Shutdown method
Added support for instrumenting short-lived processes:The new Application.Shutdown method allows applications to report data to New Relic without waiting a full minute. The new Application.WaitForConn…
Added support for Transaction Traces. Stack trace filenames have been shortened: Any thing preceding the first /src/ is now removed
Removed BetaToken from the Config structure. Breaking Datastore change: datastore package contents moved to top level newrelic package. datastore.MySQL has become newrelic.DatastoreMySQL. Breaking Att…