<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Go agent release notes]]></title><description><![CDATA[Go agent release notes]]></description><link>https://docs.newrelic.com</link><generator>RSS for Node</generator><lastBuildDate>Thu, 01 Oct 2026 15:01:11 GMT</lastBuildDate><atom:link href="https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/feed.xml" rel="self" type="application/rss+xml"/><item><title><![CDATA[Go agent v1.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-10</link><pubDate>Mon, 08 Aug 2016 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Removed &lt;code&gt;BetaToken&lt;/code&gt; from the &lt;code&gt;Config&lt;/code&gt; structure.&lt;/li&gt;
&lt;li&gt;Breaking Datastore change: &lt;code&gt;datastore&lt;/code&gt; package contents moved to top level &lt;code&gt;newrelic&lt;/code&gt; package. &lt;code&gt;datastore.MySQL&lt;/code&gt; has become &lt;code&gt;newrelic.DatastoreMySQL&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Breaking Attributes change: &lt;code&gt;attributes&lt;/code&gt; package contents moved to top level &lt;code&gt;newrelic&lt;/code&gt; package. &lt;code&gt;attributes.ResponseCode&lt;/code&gt; has become &lt;code&gt;newrelic.AttributeResponseCode&lt;/code&gt;. Some attribute name constants have been shortened.&lt;/li&gt;
&lt;li&gt;Added &quot;runtime.NumCPU&quot; to the environment tab. Thanks sergeylanzman for the contribution.&lt;/li&gt;
&lt;li&gt;Prefixed the environment tab values &quot;Compiler&quot;, &quot;GOARCH&quot;, &quot;GOOS&quot;, and &quot;Version&quot; with &quot;runtime.&quot;&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 08 Aug 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMS4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-11</link><pubDate>Wed, 07 Sep 2016 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added support for Transaction Traces.&lt;/li&gt;
&lt;li&gt;Stack trace filenames have been shortened: Any thing preceding the first &lt;code&gt;/src/&lt;/code&gt; is now removed.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 07 Sep 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.10]]></title><guid isPermaLink="false">R28gYWdlbnQtMS4xMA==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-110</link><pubDate>Tue, 24 Oct 2017 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;New&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added new RecordCustomMetric method to &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#Application&quot;&gt;Application&lt;/a&gt;. This functionality can be used to track averages or counters without using custom events. See &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/agent-data/collect-custom-metrics&quot;&gt;Custom Metric Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed import needed for &lt;code&gt;logrus&lt;/code&gt;. The import &lt;code&gt;Sirupsen/logrus&lt;/code&gt; had been renamed to &lt;code&gt;sirupsen/logrus&lt;/code&gt;. Thanks to @alfred-landrum for spotting this.&lt;/li&gt;
&lt;li&gt;Added &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#ErrorAttributer&quot;&gt;ErrorAttributer&lt;/a&gt;, an optional interface that can be implemented by errors provided to &lt;code&gt;Transaction.NoticeError&lt;/code&gt; to attach additional attributes. These attributes are subject to attribute configuration.&lt;/li&gt;
&lt;li&gt;Added &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#Error&quot;&gt;Error&lt;/a&gt;, a type that allows direct control of error fields.&lt;/li&gt;
&lt;li&gt;Updated license to address scope of usage.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 24 Oct 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.2]]></title><guid isPermaLink="false">R28gYWdlbnQtMS4y</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-12</link><pubDate>Thu, 06 Oct 2016 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for instrumenting short-lived processes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The new &lt;code&gt;Application.Shutdown&lt;/code&gt; method allows applications to report data to New Relic without waiting a full minute.&lt;/li&gt;
&lt;li&gt;The new &lt;code&gt;Application.WaitForConnection&lt;/code&gt; method allows your process to defer instrumentation until the application is connected and ready to gather data.&lt;/li&gt;
&lt;li&gt;Full documentation here: &lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/application.go&quot;&gt;application.go&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Example short-lived process: &lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/examples/short-lived-process/main.go&quot;&gt;examples/short-lived-process/main.go&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Error metrics are no longer created when &lt;code&gt;ErrorCollector.Enabled = false&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;http://www.github.com/mgutz/logxi&quot;&gt;http://wwwgithub.com/mgutz/logxi&lt;/a&gt;. See &lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrlogxi/v1/nrlogxi.go&quot;&gt;https://github.com/newrelic/go-agent/blob/master/_integrations/nrlogxi/v1/nrlogxi.go&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed bug where Transaction Trace thresholds based upon Apdex were not being applied to background transactions.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 06 Oct 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.11]]></title><guid isPermaLink="false">R28gYWdlbnQtMS4xMQ==</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-111</link><pubDate>Wed, 29 Nov 2017 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added support for Cross Application Tracing (CAT). Please refer to &lt;a href=&quot;https://github.com/newrelic/go-agent/blob/v1.11.0/GUIDE.md#upgrading-applications-to-support-cross-application-tracing&quot;&gt;the upgrading section of the guide&lt;/a&gt; for more detail on how to ensure you get the most out of the Go agent&apos;s new CAT support.&lt;/li&gt;
&lt;li&gt;The agent now collects additional metadata when running within Amazon Web Services, Google Cloud Platform, Microsoft Azure, and Pivotal Cloud Foundry. This information is used to provide an enhanced experience when the agent is deployed on those platforms.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 29 Nov 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.3]]></title><guid isPermaLink="false">R28gYWdlbnQtMS4z</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-13</link><pubDate>Fri, 07 Oct 2016 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added a timeout parameter to the Application.Shutdown method.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 07 Oct 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.4]]></title><guid isPermaLink="false">R28gYWdlbnQtMS40</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-14</link><pubDate>Wed, 12 Oct 2016 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;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 &lt;a href=&quot;https://docs.newrelic.com/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues&quot;&gt;debug slow datastore activity&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Added new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#DatastoreSegment&quot;&gt;DatastoreSegment&lt;/a&gt; fields &lt;code&gt;ParameterizedQuery&lt;/code&gt;, &lt;code&gt;QueryParameters&lt;/code&gt;, &lt;code&gt;Host&lt;/code&gt;, &lt;code&gt;PortPathOrID&lt;/code&gt;, and &lt;code&gt;DatabaseName&lt;/code&gt;. These fields will be shown in transaction traces and in slow query traces.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 12 Oct 2016 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.6]]></title><guid isPermaLink="false">R28gYWdlbnQtMS42</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-17</link><pubDate>Thu, 16 Feb 2017 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added support for &lt;a href=&quot;http://github.com/gorilla/mux&quot;&gt;gorilla/mux&lt;/a&gt; in the new &lt;code&gt;nrgorilla&lt;/code&gt; package.
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://godoc.org/github.com/newrelic/go-agent/_integrations/nrgorilla/v1&quot;&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/examples/_gorilla/main.go&quot;&gt;Example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 16 Feb 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.6]]></title><guid isPermaLink="false">R28gYWdlbnQtMS42</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-16</link><pubDate>Thu, 09 Feb 2017 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for custom error messages and stack traces. Errors provided to &lt;code&gt;Transaction.NoticeError&lt;/code&gt; will now be checked to see if they implement &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#ErrorClasser&quot;&gt;ErrorClasser&lt;/a&gt; and/or &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#StackTracer&quot;&gt;StackTracer&lt;/a&gt;. Thanks to @fgrosse for this proposal.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://github.com/pkg/errors&quot;&gt;pkg/errors&lt;/a&gt;. Thanks to @fgrosse for this work.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrpkgerrors&quot;&gt;documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrpkgerrors/nrpkgerrors.go&quot;&gt;example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixed tests for Go 1.8.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 09 Feb 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.9]]></title><guid isPermaLink="false">R28gYWdlbnQtMS45</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-19</link><pubDate>Tue, 18 Apr 2017 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;New&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added support for &lt;a href=&quot;https://github.com/gin-gonic/gin&quot;&gt;github.com/gin-gonic/gin&lt;/a&gt; in the new &lt;code&gt;nrgin&lt;/code&gt; package.
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://godoc.org/github.com/newrelic/go-agent/_integrations/nrgin/v1&quot;&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 18 Apr 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v1.8]]></title><guid isPermaLink="false">R28gYWdlbnQtMS44</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-18</link><pubDate>Fri, 17 Mar 2017 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed incorrect metric rule application when the metric rule is flagged to terminate and matches but the name is unchanged.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Segment.End()&lt;/code&gt;, &lt;code&gt;DatastoreSegment.End()&lt;/code&gt;, and &lt;code&gt;ExternalSegment.End()&lt;/code&gt; methods now return an error which may be helpful in diagnosing situations where segment data is unexpectedly missing.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 17 Mar 2017 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-21</link><pubDate>Tue, 28 Aug 2018 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;2.1.0 New&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Go Agent now supports distributed tracing&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;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 understand a complex system better than ever before.&lt;/p&gt;
&lt;p&gt;Distributed tracing is available with an APM Pro or equivalent subscription. To see a complete distributed trace, you need to enable the feature on a set of neighboring services. Enabling distributed tracing changes the behavior of some New Relic features, so carefully consult the &lt;a href=&quot;https://docs.newrelic.com/docs/transition-guide-distributed-tracing&quot;&gt;transition guide&lt;/a&gt; before you enable this feature.&lt;/p&gt;
&lt;p&gt;To enable distributed tracing, set the following fields in your config. Note that distributed tracing and cross application tracing cannot be used simultaneously.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;config := newrelic.NewConfig(&quot;Your Application Name&quot;, &quot;__YOUR_NEW_RELIC_LICENSE_KEY__&quot;)
  config.CrossApplicationTracer.Enabled = false
  config.DistributedTracer.Enabled = true
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Please refer to the &lt;a href=&quot;GUIDE.md#distributed-tracingg&quot;&gt;distributed tracing section of the guide&lt;/a&gt; for more detail on how to ensure you get the most out of the Go agent&apos;s distributed tracing support.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;New distributed trace calls/functions&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Added functions &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#NewContext&quot;&gt;NewContext&lt;/a&gt; and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#FromContext&quot;&gt;FromContext&lt;/a&gt; for adding and retrieving the Transaction from a Context. Handlers instrumented by &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#WrapHandle&quot;&gt;WrapHandle&lt;/a&gt;, &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#WrapHandleFunc&quot;&gt;WrapHandleFunc&lt;/a&gt;, and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrgorilla/v1#InstrumentRoutes&quot;&gt;nrgorilla.InstrumentRoutes&lt;/a&gt; may use &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#FromContext&quot;&gt;FromContext&lt;/a&gt; on the request&apos;s context to access the Transaction. Thanks to @caarlos0 for the contribution! Though &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#NewContext&quot;&gt;NewContext&lt;/a&gt; and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#FromContext&quot;&gt;FromContext&lt;/a&gt; require Go 1.7+ (when &lt;a href=&quot;https://golang.org/pkg/context/&quot;&gt;context&lt;/a&gt; was added), &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#RequestWithTransactionContext&quot;&gt;RequestWithTransactionContext&lt;/a&gt; is always exported so that it can be used in all framework and library instrumentation.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 28 Aug 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-20</link><pubDate>Tue, 15 May 2018 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;2.0.0 New&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;The &lt;code&gt;End()&lt;/code&gt; functions defined on the &lt;code&gt;Segment&lt;/code&gt;, &lt;code&gt;DatastoreSegment&lt;/code&gt;, and &lt;code&gt;ExternalSegment&lt;/code&gt; types now receive the segment as a pointer, rather than as a value. This prevents unexpected behaviour when a call to &lt;code&gt;End()&lt;/code&gt; is deferred before one or more fields are changed on the segment.&lt;/p&gt;
&lt;p&gt;In practice, this is likely to only affect this pattern:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;defer newrelic.DatastoreSegment{
  // ...
}.End()
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Instead, you will now need to separate the literal from the deferred call:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;ds := newrelic.DatastoreSegment{
  // ...
}
defer ds.End()
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;When creating custom and external segments, we recommend using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#StartSegment&quot;&gt;&lt;code&gt;newrelic.StartSegment()&lt;/code&gt;&lt;/a&gt; and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#StartExternalSegment&quot;&gt;&lt;code&gt;newrelic.StartExternalSegment()&lt;/code&gt;&lt;/a&gt;, respectively.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added GoDoc badge to README. Thanks to @mrhwick for the contribution!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;Config.UseTLS&lt;/code&gt; configuration setting has been removed to increase security. TLS will now always be used in communication with New Relic Servers.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 15 May 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.10.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xMC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2100</link><pubDate>Wed, 31 Jul 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.10.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for custom events when using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrlambda&quot;&gt;nrlambda&lt;/a&gt;. Example Lambda handler which creates custom event:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;func handler(ctx context.Context) {
    if txn := newrelic.FromContext(ctx); nil != txn {
        txn.Application().RecordCustomEvent(&quot;myEvent&quot;, map[string]interface{}{
            &quot;zip&quot;: &quot;zap&quot;,
        })
    }
    fmt.Println(&quot;hello world!&quot;)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 31 Jul 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.11.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xMS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2110</link><pubDate>Thu, 22 Aug 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://github.com/micro/go-micro&quot;&gt;Micro&lt;/a&gt; monitoring with the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrmicro&quot;&gt;_integrations/nrmicro&lt;/a&gt; package. This package supports instrumentation for servers, clients, publishers, and subscribers.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrmicro/example/server/server.go&quot;&gt;Server Example&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrmicro/example/client/client.go&quot;&gt;Client Example&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrmicro/example/pubsub/main.go&quot;&gt;Publisher and Subscriber Example&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrmicro&quot;&gt;Full godocs Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for creating static &lt;code&gt;WebRequest&lt;/code&gt; instances manually via the &lt;code&gt;NewStaticWebRequest&lt;/code&gt; function. This can be useful when you want to create a web transaction but don&apos;t have an &lt;code&gt;http.Request&lt;/code&gt; object. Here&apos;s an example of creating a static &lt;code&gt;WebRequest&lt;/code&gt; and using it to mark a transaction as a web transaction:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;hdrs := http.Headers{}
u, _ := url.Parse(&quot;http://example.com&quot;)
webReq := newrelic.NewStaticWebRequest(hdrs, u, &quot;GET&quot;, newrelic.TransportHTTP)
txn := app.StartTransaction(&quot;My-Transaction&quot;, nil, nil)
txn.SetWebRequest(webReq)
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 22 Aug 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.13.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xMy4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2130</link><pubDate>Mon, 23 Sep 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.13.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://github.com/julienschmidt/httprouter&quot;&gt;HttpRouter&lt;/a&gt; in the new &lt;a href=&quot;http://godoc.org/github.com/newrelic/go-agent/_integrations/nrhttprouter&quot;&gt;_integrations/nrhttprouter&lt;/a&gt; package. This package allows you to easily instrument inbound requests through the HttpRouter framework.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://godoc.org/github.com/newrelic/go-agent/_integrations/nrhttprouter&quot;&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrhttprouter/example/main.go&quot;&gt;Example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://github.com/uber-go/zap&quot;&gt;github.com/uber-go/zap&lt;/a&gt; in the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrzap&quot;&gt;_integrations/nrzap&lt;/a&gt; package. This package allows you to send agent log messages to &lt;code&gt;zap&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 23 Sep 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.12.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xMi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2120</link><pubDate>Tue, 17 Sep 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added new methods to expose &lt;code&gt;Transaction&lt;/code&gt; details:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Transaction.GetTraceMetadata()&lt;/code&gt; returns a &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#TraceMetadata&quot;&gt;TraceMetadata&lt;/a&gt; which contains distributed tracing identifiers.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Transaction.GetLinkingMetadata()&lt;/code&gt; returns a &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#LinkingMetadata&quot;&gt;LinkingMetadata&lt;/a&gt; which contains the fields needed to link data to a trace or entity.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added a new plugin for the &lt;a href=&quot;https://github.com/sirupsen/logrus&quot;&gt;Logrus logging framework&lt;/a&gt; with the new &lt;a href=&quot;https://github.com/newrelic/go-agent/go-agent/tree/master/_integrations/logcontext/nrlogrusplugin&quot;&gt;_integrations/logcontext/nrlogrusplugin&lt;/a&gt; package. This plugin leverages the new &lt;code&gt;GetTraceMetadata&lt;/code&gt; and &lt;code&gt;GetLinkingMetadata&lt;/code&gt; above to decorate logs.&lt;/p&gt;
&lt;p&gt;To enable, set your log&apos;s formatter to the &lt;code&gt;nrlogrusplugin.ContextFormatter{}&lt;/code&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;logger := logrus.New()
logger.SetFormatter(nrlogrusplugin.ContextFormatter{})
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The logger will now look for a &lt;code&gt;newrelic.Transaction&lt;/code&gt; inside its context and decorate logs accordingly. Therefore, the Transaction must be added to the context and passed to the logger. For example, this logging call&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;logger.Info(&quot;Hello New Relic!&quot;)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;must be transformed to include the context, such as:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;ctx := newrelic.NewContext(context.Background(), txn)
logger.WithContext(ctx).Info(&quot;Hello New Relic!&quot;)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;For full documentation see the &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/logcontext/nrlogrusplugin&quot;&gt;godocs&lt;/a&gt; or view the &lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/logcontext/nrlogrusplugin/example/main.go&quot;&gt;example&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://github.com/nats-io/nats.go&quot;&gt;NATS&lt;/a&gt; and &lt;a href=&quot;https://github.com/nats-io/stan.go&quot;&gt;NATS Streaming&lt;/a&gt; monitoring with the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrnats&quot;&gt;_integrations/nrnats&lt;/a&gt; and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrstan&quot;&gt;_integrations/nrstan&lt;/a&gt; packages. These packages support instrumentation of publishers and subscribers.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrnats/examples/main.go&quot;&gt;NATS Example&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrstan/examples/main.go&quot;&gt;NATS Streaming Example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enables ability to migrate to &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/configuration/enable-configurable-security-policies&quot;&gt;Configurable Security Policies (CSP)&lt;/a&gt; on a per agent basis for accounts already using &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/configuration/high-security-mode&quot;&gt;High-security mode (HSM)&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Previously, if CSP was configured for an account, New Relic would not allow an agent to connect without the &lt;code&gt;security_policies_token&lt;/code&gt;. This led to agents not being able to connect during the period between when CSP was enabled for an account and when each agent is configured with the correct token.&lt;/li&gt;
&lt;li&gt;With this change, when both HSM and CSP are enabled for an account, an agent (this version or later) can successfully connect with either &lt;code&gt;high_security: true&lt;/code&gt; or the appropriate &lt;code&gt;security_policies_token&lt;/code&gt; configured - allowing the agent to continue to connect after CSP is configured on the account but before the appropriate &lt;code&gt;security_policies_token&lt;/code&gt; is configured for each agent.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 17 Sep 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.14.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xNC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2140</link><pubDate>Mon, 14 Oct 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.14.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for a new segment type, &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#MessageProducerSegment&quot;&gt;&lt;code&gt;MessageProducerSegment&lt;/code&gt;&lt;/a&gt;, to be used to track time spent adding messages to message queuing systems like RabbitMQ or Kafka.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;seg := &amp;#x26;newrelic.MessageProducerSegment{
  StartTime:       newrelic.StartSegmentNow(txn),
  Library:         &quot;RabbitMQ&quot;,
  DestinationType: newrelic.MessageExchange,
  DestinationName: &quot;myExchange&quot;,
}
// add message to queue here
seg.End()
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added new attribute constants for use with message consumer transactions. These attributes can be used to add more detail to a transaction that tracks time spent consuming a message off a message queuing system like RabbitMQ or Kafka. They can be added using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#Transaction&quot;&gt;&lt;code&gt;txn.AddAttribute&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;// The routing key of the consumed message.
txn.AddAttribute(newrelic.AttributeMessageRoutingKey, &quot;myRoutingKey&quot;)
// The name of the queue the message was consumed from.
txn.AddAttribute(newrelic.AttributeMessageQueueName, &quot;myQueueName&quot;)
// The type of exchange used for the consumed message (direct, fanout,
// topic, or headers).
txn.AddAttribute(newrelic.AttributeMessageExchangeType, &quot;myExchangeType&quot;)
// The callback queue used in RPC configurations.
txn.AddAttribute(newrelic.AttributeMessageReplyTo, &quot;myReplyTo&quot;)
// The application-generated identifier used in RPC configurations.
txn.AddAttribute(newrelic.AttributeMessageCorrelationID, &quot;myCorrelationID&quot;)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;It is recommended that at most one message is consumed per transaction.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://golang.org/doc/go1.13#error_wrapping&quot;&gt;Go 1.13&apos;s Error wrapping&lt;/a&gt;. &lt;code&gt;Transaction.NoticeError&lt;/code&gt; now uses &lt;a href=&quot;https://golang.org/pkg/errors/#Unwrap&quot;&gt;Unwrap&lt;/a&gt; recursively to identify the error&apos;s cause (the deepest wrapped error) when generating the error&apos;s class field. This functionality will help group your errors usefully.&lt;/p&gt;
&lt;p&gt;For example, when using Go 1.13, the following code:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;type socketError struct{}

func (e socketError) Error() string { return &quot;socket error&quot; }

func gamma() error { return socketError{} }
func beta() error  { return fmt.Errorf(&quot;problem in beta: %w&quot;, gamma()) }
func alpha() error { return fmt.Errorf(&quot;problem in alpha: %w&quot;, beta()) }

func execute(txn newrelic.Transaction) {
err := alpha()
txn.NoticeError(err)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;captures an error with message &lt;code&gt;&quot;problem in alpha: problem in beta: socket error&quot;&lt;/code&gt; and class &lt;code&gt;&quot;main.socketError&quot;&lt;/code&gt;. Previously, the class was recorded as &lt;code&gt;&quot;*fmt.wrapError&quot;&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;A &lt;code&gt;Stack&lt;/code&gt; field has been added to &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#Error&quot;&gt;Error&lt;/a&gt;, which can be assigned using the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#NewStackTrace&quot;&gt;NewStackTrace&lt;/a&gt; function. This allows your error stack trace to show where the error happened, rather than the location of the &lt;code&gt;NoticeError&lt;/code&gt; call.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;Transaction.NoticeError&lt;/code&gt; not only checks for a stack trace (using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#StackTracer&quot;&gt;StackTracer&lt;/a&gt;) in the error parameter, but in the error&apos;s cause as well. This means that you can create an &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#Error&quot;&gt;Error&lt;/a&gt; where your error occurred, wrap it multiple times to add information, notice it with &lt;code&gt;NoticeError&lt;/code&gt;, and still have a useful stack trace. Take a look!&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;func gamma() error {
return newrelic.Error{
    Message: &quot;something went very wrong&quot;,
    Class:   &quot;socketError&quot;,
    Stack:   newrelic.NewStackTrace(),
}
}

func beta() error  { return fmt.Errorf(&quot;problem in beta: %w&quot;, gamma()) }
func alpha() error { return fmt.Errorf(&quot;problem in alpha: %w&quot;, beta()) }

func execute(txn newrelic.Transaction) {
err := alpha()
txn.NoticeError(err)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;In this example, the topmost stack trace frame recorded is &lt;code&gt;&quot;gamma&quot;&lt;/code&gt;, rather than &lt;code&gt;&quot;execute&quot;&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for configuring a maximum number of transaction events per minute to be sent to New Relic. It can be configured as follows:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;config := newrelic.NewConfig(&quot;Application Name&quot;, os.Getenv(&quot;NEW_RELIC_LICENSE_KEY&quot;))  
config.TransactionEvents.MaxSamplesStored = 100
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;For additional configuration information, see our &lt;a href=&quot;https://docs.newrelic.com/docs/agents/go-agent/configuration/go-agent-configuration&quot;&gt;documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Miscellaneous&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Updated the &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrmicro&quot;&gt;&lt;code&gt;nrmicro&lt;/code&gt;&lt;/a&gt; package to use the new segment type &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#MessageProducerSegment&quot;&gt;&lt;code&gt;MessageProducerSegment&lt;/code&gt;&lt;/a&gt; and the new attribute constants:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrmicro#ClientWrapper&quot;&gt;&lt;code&gt;nrmicro.ClientWrapper&lt;/code&gt;&lt;/a&gt; now uses &lt;code&gt;newrelic.MessageProducerSegment&lt;/code&gt;s instead of &lt;code&gt;newrelic.ExternalSegment&lt;/code&gt;s for calls to &lt;a href=&quot;https://godoc.org/github.com/micro/go-micro/client#Client&quot;&gt;&lt;code&gt;Client.Publish&lt;/code&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrmicro#SubscriberWrapper&quot;&gt;&lt;code&gt;nrmicro.SubscriberWrapper&lt;/code&gt;&lt;/a&gt; updates transaction names and adds the attribute &lt;code&gt;message.routingKey&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Updated the &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrnats&quot;&gt;&lt;code&gt;nrnats&lt;/code&gt;&lt;/a&gt; and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrstan&quot;&gt;&lt;code&gt;nrstan&lt;/code&gt;&lt;/a&gt; packages to use the new segment type &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#MessageProducerSegment&quot;&gt;&lt;code&gt;MessageProducerSegment&lt;/code&gt;&lt;/a&gt; and the new attribute constants:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrnats#StartPublishSegment&quot;&gt;&lt;code&gt;nrnats.StartPublishSegment&lt;/code&gt;&lt;/a&gt; now starts and returns a &lt;code&gt;newrelic.MessageProducerSegment&lt;/code&gt; type.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrnats#SubWrapper&quot;&gt;&lt;code&gt;nrnats.SubWrapper&lt;/code&gt;&lt;/a&gt; and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrstan#StreamingSubWrapper&quot;&gt;&lt;code&gt;nrstan.StreamingSubWrapper&lt;/code&gt;&lt;/a&gt; updates transaction names and adds the attributes &lt;code&gt;message.routingKey&lt;/code&gt;, &lt;code&gt;message.queueName&lt;/code&gt;, and &lt;code&gt;message.replyTo&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 14 Oct 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.14.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xNC4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2141</link><pubDate>Tue, 15 Oct 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.14.1&lt;/h2&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Removed the hidden &lt;code&gt;&quot;NEW_RELIC_DEBUG_LOGGING&quot;&lt;/code&gt; environment variable setting which was broken in release 2.14.0.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 15 Oct 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.16.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xNi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2160</link><pubDate>Fri, 22 Nov 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.16.0&lt;/h2&gt;
&lt;h3&gt;Upcoming&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;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: &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/106&quot;&gt;https://github.com/newrelic/go-agent/issues/106&lt;/a&gt; We would love your feedback!&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue in the &lt;a href=&quot;http://godoc.org/github.com/newrelic/go-agent/_integrations/nrhttprouter&quot;&gt;nrhttprouter&lt;/a&gt; integration where the transaction was not being added to the requests context. This resulted in an inability to access the transaction from within an &lt;a href=&quot;https://godoc.org/github.com/julienschmidt/httprouter#Handle&quot;&gt;httprouter.Handle&lt;/a&gt; function. This issue has now been fixed.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Fri, 22 Nov 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.15.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xNS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2150</link><pubDate>Thu, 24 Oct 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.15.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for monitoring &lt;a href=&quot;https://github.com/mongodb/mongo-go-driver/&quot;&gt;MongoDB&lt;/a&gt; queries with the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrmongo&quot;&gt;_integrations/nrmongo&lt;/a&gt; package.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrmongo/example/main.go&quot;&gt;Example application&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrmongo&quot;&gt;Full godocs Documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added new method &lt;code&gt;Transaction.IsSampled()&lt;/code&gt; that returns a boolean that indicates if the transaction is sampled. A sampled transaction records a span event for each segment. Distributed tracing must be enabled for transactions to be sampled. &lt;code&gt;false&lt;/code&gt; is returned if the transaction has finished. This sampling flag is needed for B3 trace propagation and future support of W3C Trace Context.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for adding &lt;a href=&quot;https://github.com/openzipkin/b3-propagation&quot;&gt;B3 Headers&lt;/a&gt; to outgoing requests. This is helpful if the service you are calling uses B3 for trace state propagation (for example, it uses Zipkin instrumentation). You can use the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrb3&quot;&gt;_integrations/nrb3&lt;/a&gt; package&apos;s &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrb3#NewRoundTripper&quot;&gt;&lt;code&gt;nrb3.NewRoundTripper&lt;/code&gt;&lt;/a&gt; like this:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;// When defining the client, set the Transport to the NewRoundTripper. This
// will create ExternalSegments and add B3 headers for each request.
client := &amp;#x26;http.Client{
  Transport: nrb3.NewRoundTripper(nil),
}

// Distributed Tracing must be enabled for this application.
// (see https://docs.newrelic.com/docs/understand-dependencies/distributed-tracing/enable-configure/enable-distributed-tracing)
txn := currentTxn()

req, err := http.NewRequest(&quot;GET&quot;, &quot;http://example.com&quot;, nil)
if nil != err {
  log.Fatalln(err)
}

// Be sure to add the transaction to the request context.  This step is
// required.
req = newrelic.RequestWithTransactionContext(req, txn)
resp, err := client.Do(req)
if nil != err {
  log.Fatalln(err)
}

defer resp.Body.Close()
fmt.Println(resp.StatusCode)
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 24 Oct 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.16.2]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xNi4y</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2162</link><pubDate>Tue, 10 Dec 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.16.2&lt;/h2&gt;
&lt;h3&gt;New Relic&apos;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 beta release.&lt;/h3&gt;
&lt;h3&gt;If you do not manually take steps to use the new v3 folder you will not see any changes in your agent.&lt;/h3&gt;
&lt;p&gt;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 &lt;code&gt;&quot;github.com/newrelic/go-agent&quot;&lt;/code&gt; is unchanged. The Go agent v3.0 code in the v3 folder has the following changes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Transaction names created by &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#WrapHandle&quot;&gt;&lt;code&gt;WrapHandle&lt;/code&gt;&lt;/a&gt;, &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#WrapHandleFunc&quot;&gt;&lt;code&gt;WrapHandleFunc&lt;/code&gt;&lt;/a&gt;, &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrecho-v3&quot;&gt;nrecho-v3&lt;/a&gt;, &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrecho-v4&quot;&gt;nrecho-v4&lt;/a&gt;, &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrgorilla&quot;&gt;nrgorilla&lt;/a&gt;, and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrgin&quot;&gt;nrgin&lt;/a&gt; now include the HTTP method. For example, the following code:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;http.HandleFunc(newrelic.WrapHandleFunc(app, &quot;/users&quot;, usersHandler))
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;now creates a metric called &lt;code&gt;WebTransaction/Go/GET /users&lt;/code&gt; instead of &lt;code&gt;WebTransaction/Go/users&lt;/code&gt;. As a result of this change, you may need to update your alerts and dashboards.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#ConfigFromEnvironment&quot;&gt;ConfigFromEnvironment&lt;/a&gt; config option is now strict. If one of the environment variables, such as &lt;code&gt;NEW_RELIC_DISTRIBUTED_TRACING_ENABLED&lt;/code&gt;, cannot be parsed, then &lt;code&gt;Config.Error&lt;/code&gt; will be populated and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#NewApplication&quot;&gt;NewApplication&lt;/a&gt; will return an error.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#ConfigFromEnvironment&quot;&gt;ConfigFromEnvironment&lt;/a&gt; now processes &lt;code&gt;NEW_RELIC_ATTRIBUTES_EXCLUDE&lt;/code&gt; and &lt;code&gt;NEW_RELIC_ATTRIBUTES_INCLUDE&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 10 Dec 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.16.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xNi4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2161</link><pubDate>Mon, 02 Dec 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.16.1&lt;/h2&gt;
&lt;h3&gt;New Relic&apos;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 beta release.&lt;/h3&gt;
&lt;h3&gt;If you do not manually take steps to use the new v3 folder, as described below, you will not see any changes in your agent.&lt;/h3&gt;
&lt;p&gt;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 and test out the changes prior to the official release.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;This is not an official 3.0 release, it is just a vehicle to gather feedback on proposed changes&lt;/strong&gt;. It is not tagged as 3.0 in Github and the 3.0 release is not yet available to update in your Go mod file. In order to test out these changes, you will need to clone this repo in your Go source directory, under &lt;code&gt;[go-src-dir]/src/github.com/newrelic/go-agent&lt;/code&gt;. Once you have the source checked out, you will need to follow the steps in the second section of &lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/v3/MIGRATION.md&quot;&gt;v3/MIGRATION.md&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A list of changes and installation instructions is included in the v3 folder and can be found &lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/v3/MIGRATION.md&quot;&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;For this pre-release (beta) version of Go agent v3.0, please note:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The changes in the v3 folder represent what we expect to release in &apos;~&apos;2 weeks as our major 3.0 release. However, as we are soliciting feedback on the changes and there is the possibility of some breaking changes before the official release.&lt;/li&gt;
&lt;li&gt;This is not an official 3.0 release; it is not tagged as 3.0 in Github and the 3.0 release is not yet available to update in your Go mod file.&lt;/li&gt;
&lt;li&gt;If you test out these changes and encounter issues, questions, or have feedback that you would like to pass along, please open up an issue &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/new&quot;&gt;here&lt;/a&gt; and be sure to include the label &lt;code&gt;3.0&lt;/code&gt;.
&lt;ul&gt;
&lt;li&gt;For normal (non-3.0) issues/questions we request that you report them via our &lt;a href=&quot;http://support.newrelic.com/&quot;&gt;support site&lt;/a&gt; or our &lt;a href=&quot;https://support.newrelic.com/s/&quot;&gt;community forum&lt;/a&gt;. Please only report questions related to the 3.0 pre-release directly via GitHub.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;V3 will add support for Go Modules. The go.mod files exist in the v3 folder, but they will not be usable until we have fully tagged the 3.0 release officially. Examples of version tags we plan to use for different modules include:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;v3.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;v3/integrations/nrecho-v3/v1.0.0&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;v3/integrations/nrecho-v4/v1.0.0&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The changes are the ones that we have requested feedback previously in &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/106&quot;&gt;this issue&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;A full list of changes that are included, along with a checklist for upgrading, is available in &lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/v3/MIGRATION.md&quot;&gt;v3/MIGRATION.md&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 02 Dec 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.2]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4y</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-22</link><pubDate>Tue, 18 Dec 2018 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;2.2 Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;Transaction&lt;/code&gt; parameter to &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#NewRoundTripper&quot;&gt;NewRoundTripper&lt;/a&gt; and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#StartExternalSegment&quot;&gt;StartExternalSegment&lt;/a&gt; is now optional: If it is &lt;code&gt;nil&lt;/code&gt;, then a &lt;code&gt;Transaction&lt;/code&gt; will be looked for in the request&apos;s context (using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#FromContext&quot;&gt;FromContext&lt;/a&gt;). Passing a &lt;code&gt;nil&lt;/code&gt; transaction is &lt;strong&gt;STRONGLY&lt;/strong&gt; recommended when using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#NewRoundTripper&quot;&gt;NewRoundTripper&lt;/a&gt; since it allows one &lt;code&gt;http.Client.Transport&lt;/code&gt; to be used for multiple transactions. Example use:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;client := &amp;#x26;http.Client{}
client.Transport = newrelic.NewRoundTripper(nil, client.Transport)
request, _ := http.NewRequest(&quot;GET&quot;, &quot;http://example.com&quot;, nil)
request = newrelic.RequestWithTransactionContext(request, txn)
resp, err := client.Do(request)
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Introduced &lt;code&gt;Transaction.SetWebRequest(WebRequest)&lt;/code&gt; method which marks the transaction as a web transaction. If the &lt;code&gt;WebRequest&lt;/code&gt; parameter is non-nil, &lt;code&gt;SetWebRequest&lt;/code&gt; will collect details on request attributes, url, and method. This method is useful if you don&apos;t have access to the request at the beginning of the transaction, or if your request is not an &lt;code&gt;*http.Request&lt;/code&gt; (just add methods to your request that satisfy &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#WebRequest&quot;&gt;WebRequest&lt;/a&gt;). To use an &lt;code&gt;*http.Request&lt;/code&gt; as the parameter, use the &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#NewWebRequest&quot;&gt;NewWebRequest&lt;/a&gt; transformation function. Example:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;var request *http.Request = getInboundRequest()
txn.SetWebRequest(newrelic.NewWebRequest(request))
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;Fixed &lt;code&gt;Debug&lt;/code&gt; in &lt;code&gt;nrlogrus&lt;/code&gt; package. Previous versions of the New Relic Go Agent incorrectly logged to Info level instead of Debug. This has now been fixed. Thanks to @paddycarey for catching this.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrgin/v1#Transaction&quot;&gt;nrgin.Transaction&lt;/a&gt; may now be called with either a &lt;code&gt;context.Context&lt;/code&gt; or a &lt;code&gt;*gin.Context&lt;/code&gt;. If you were passing a &lt;code&gt;*gin.Context&lt;/code&gt; around your functions as a &lt;code&gt;context.Context&lt;/code&gt;, you may access the Transaction by calling either &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrgin/v1#Transaction&quot;&gt;nrgin.Transaction&lt;/a&gt; or &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#FromContext&quot;&gt;FromContext&lt;/a&gt;. These functions now work nicely together. For example, &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#FromContext&quot;&gt;FromContext&lt;/a&gt; will return the &lt;code&gt;Transaction&lt;/code&gt; added by &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrgin/v1#Middleware&quot;&gt;nrgin.Middleware&lt;/a&gt;. Thanks to @rodriguezgustavo for the suggestion.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 18 Dec 2018 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.16.3]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4xNi4z</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-2163</link><pubDate>Wed, 11 Dec 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;Notes&lt;/h2&gt;
&lt;p&gt;New Relic&apos;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 beta release.&lt;/p&gt;
&lt;p&gt;If you do not manually take steps to use the new v3 folder you will not see any changes in your agent.&lt;/p&gt;
&lt;p&gt;This is the third 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`&quot;github.com/newrelic/go-agent&quot;` is unchanged.&lt;/p&gt;
&lt;h2&gt;Fixes&lt;/h2&gt;
&lt;p&gt;The Go agent v3.0 code in the v3 folder has the following changes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#ConfigFromEnvironment&quot;&gt;ConfigFromEnvironment&lt;/a&gt; bug has been fixed.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 11 Dec 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.3]]></title><guid isPermaLink="false">R28gYWdlbnQtMi4z</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-23</link><pubDate>Thu, 24 Jan 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;2.3.0 Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://echo.labstack.com&quot;&gt;Echo&lt;/a&gt; in the new &lt;code&gt;nrecho&lt;/code&gt; package.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://godoc.org/github.com/newrelic/go-agent/_integrations/nrecho&quot;&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrecho/example/main.go&quot;&gt;Example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Introduced &lt;code&gt;Transaction.SetWebResponse(http.ResponseWriter)&lt;/code&gt; method which sets the transaction&apos;s response writer. After calling this method, the &lt;code&gt;Transaction&lt;/code&gt; may be used in place of the &lt;code&gt;http.ResponseWriter&lt;/code&gt; to intercept the response code. This method is useful when the &lt;code&gt;http.ResponseWriter&lt;/code&gt; is not available at the beginning of the transaction (if so, it can be given as a parameter to &lt;code&gt;Application.StartTransaction&lt;/code&gt;). This method will return a reference to the transaction which implements the combination of &lt;code&gt;http.CloseNotifier&lt;/code&gt;, &lt;code&gt;http.Flusher&lt;/code&gt;, &lt;code&gt;http.Hijacker&lt;/code&gt;, and &lt;code&gt;io.ReaderFrom&lt;/code&gt; implemented by the ResponseWriter. Example:&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;func setResponseDemo(txn newrelic.Transaction) {
    recorder := httptest.NewRecorder()
    txn = txn.SetWebResponse(recorder)
    txn.WriteHeader(200)
    fmt.Println(&quot;response code recorded:&quot;, recorder.Code)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;Transaction&lt;/code&gt;&apos;s &lt;code&gt;http.ResponseWriter&lt;/code&gt; methods may now be called safely if a &lt;code&gt;http.ResponseWriter&lt;/code&gt; has not been set. This allows you to add a response code to the transaction without using a &lt;code&gt;http.ResponseWriter&lt;/code&gt;. Example:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;func transactionWithResponseCode(app newrelic.Application) {
       txn := app.StartTransaction(&quot;hasResponseCode&quot;, nil, nil)
       defer txn.End()
       txn.WriteHeader(200) // Safe!
}
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;The agent will now collect environment variables prefixed by &lt;code&gt;NEW_RELIC_METADATA_&lt;/code&gt; and &lt;code&gt;KUBERNETES_SERVICE_HOST&lt;/code&gt;. These will be added to Transaction events to provide context between your Kubernetes cluster and your services. For details on the benefits (currently in beta) see &lt;a href=&quot;https://blog.newrelic.com/engineering/monitoring-application-performance-in-kubernetes/&quot;&gt;this blog post&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The agent now collects the fully qualified domain name of the host and local IP addresses for improved linking with our Infrastructure product.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 24 Jan 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.4]]></title><guid isPermaLink="false">R28gYWdlbnQtMi40</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-24</link><pubDate>Thu, 31 Jan 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;2.4.0 Notes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Introduced &lt;code&gt;Transaction.Application&lt;/code&gt; method which returns the &lt;code&gt;Application&lt;/code&gt; that started the &lt;code&gt;Transaction&lt;/code&gt;. This method is useful since it may prevent having to pass the &lt;code&gt;Application&lt;/code&gt; to code that already has access to the &lt;code&gt;Transaction&lt;/code&gt;. Example use:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;txn.Application().RecordCustomEvent(&quot;customerOrder&quot;, map[string]interface{}{
    &quot;numItems&quot;:   2,
    &quot;totalPrice&quot;: 13.75,
})
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;Transaction.AddAttribute&lt;/code&gt; method no longer accepts &lt;code&gt;nil&lt;/code&gt; values since our backend ignores them.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 31 Jan 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.5]]></title><guid isPermaLink="false">R28gYWdlbnQtMi41</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-25</link><pubDate>Thu, 14 Feb 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.5.0&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Added support for &lt;a href=&quot;https://docs.newrelic.com/docs/browser&quot;&gt;New Relic Browser&lt;/a&gt; using the new &lt;code&gt;BrowserTimingHeader&lt;/code&gt; method on the &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#Transaction&quot;&gt;&lt;code&gt;Transaction&lt;/code&gt;&lt;/a&gt; which returns a &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#BrowserTimingHeader&quot;&gt;BrowserTimingHeader&lt;/a&gt;. The New Relic Browser JavaScript code measures page load timing, also known as real user monitoring. The Pro version of this feature measures AJAX requests, single-page applications, JavaScript errors, and much more! Example use:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;func browser(w http.ResponseWriter, r *http.Request) {
    hdr, err := w.(newrelic.Transaction).BrowserTimingHeader()
    if nil != err {
        log.Printf(&quot;unable to create browser timing header: %v&quot;, err)
    }
    // BrowserTimingHeader() will always return a header whose methods can
    // be safely called.
    if js := hdr.WithTags(); js != nil {
        w.Write(js)
    }
    io.WriteString(w, &quot;browser header page&quot;)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;The Go agent now collects an attribute named &lt;code&gt;request.uri&lt;/code&gt; on Transaction Traces, Transaction Events, Error Traces, and Error Events. &lt;code&gt;request.uri&lt;/code&gt; will never contain user, password, query parameters, or fragment. To prevent the request&apos;s URL from being collected in any data, modify your &lt;code&gt;Config&lt;/code&gt; like this:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;cfg.Attributes.Exclude = append(cfg.Attributes.Exclude, newrelic.AttributeRequestURI)
&lt;/code&gt;&lt;/pre&gt;</content:encoded><description>ReleasedOn: Thu, 14 Feb 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.6]]></title><guid isPermaLink="false">R28gYWdlbnQtMi42</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-26</link><pubDate>Tue, 12 Mar 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.6.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for async: the ability to instrument multiple concurrent goroutines, or goroutines that access or manipulate the same Transaction.&lt;/p&gt;
&lt;p&gt;The new &lt;code&gt;Transaction.NewGoroutine() Transaction&lt;/code&gt; method allows transactions to create segments in multiple goroutines!&lt;/p&gt;
&lt;p&gt;&lt;code&gt;NewGoroutine&lt;/code&gt; returns a new reference to the &lt;code&gt;Transaction&lt;/code&gt;. This must be called any time you are passing the &lt;code&gt;Transaction&lt;/code&gt; to another goroutine which makes segments. Each segment-creating goroutine must have its own &lt;code&gt;Transaction&lt;/code&gt; reference. It does not matter if you call this before or after the other goroutine has started.&lt;/p&gt;
&lt;p&gt;All &lt;code&gt;Transaction&lt;/code&gt; methods can be used in any &lt;code&gt;Transaction&lt;/code&gt; reference. The &lt;code&gt;Transaction&lt;/code&gt; will end when &lt;code&gt;End()&lt;/code&gt; is called in any goroutine.&lt;/p&gt;
&lt;p&gt;Example passing a new &lt;code&gt;Transaction&lt;/code&gt; reference directly to another goroutine:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;go func(txn newrelic.Transaction) {
    defer newrelic.StartSegment(txn, &quot;async&quot;).End()
    time.Sleep(100 * time.Millisecond)
}(txn.NewGoroutine())
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Example passing a new &lt;code&gt;Transaction&lt;/code&gt; reference on a channel to another goroutine:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;ch := make(chan newrelic.Transaction)
go func() {
    txn := &amp;#x3C;-ch
    defer newrelic.StartSegment(txn, &quot;async&quot;).End()
    time.Sleep(100 * time.Millisecond)
}()
ch &amp;#x3C;- txn.NewGoroutine()
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added integration support for &lt;a href=&quot;https://github.com/aws/aws-sdk-go&quot;&gt;&lt;code&gt;aws-sdk-go&lt;/code&gt;&lt;/a&gt; and &lt;a href=&quot;https://github.com/aws/aws-sdk-go-v2&quot;&gt;&lt;code&gt;aws-sdk-go-v2&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When using these SDKs, a segment will be created for each out going request. For DynamoDB calls, these will be Datastore segments and for all others they will be External segments.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://godoc.org/github.com/newrelic/go-agent/_integrations/nrawssdk/v1&quot;&gt;v1 Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://godoc.org/github.com/newrelic/go-agent/_integrations/nrawssdk/v2&quot;&gt;v2 Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Added span event and transaction trace segment attribute configuration. You may control which attributes are captured in span events and transaction trace segments using the &lt;code&gt;Config.SpanEvents.Attributes&lt;/code&gt; and &lt;code&gt;Config.TransactionTracer.Segments.Attributes&lt;/code&gt; settings. For example, if you want to disable the collection of &lt;code&gt;&quot;db.statement&quot;&lt;/code&gt; in your span events, modify your config like this:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;cfg.SpanEvents.Attributes.Exclude = append(cfg.SpanEvents.Attributes.Exclude,
    newrelic.SpanAttributeDBStatement)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;To disable the collection of all attributes from your transaction trace segments, modify your config like this:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cfg.TransactionTracer.Segments.Attributes.Enabled = false
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug that would prevent External Segments from being created under certain error conditions related to Cross Application Tracing.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Miscellaneous&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Improved linking between Cross Application Transaction Traces in the APM UI. When &lt;code&gt;Config.CrossApplicationTracer.Enabled = true&lt;/code&gt;, External segments in the Transaction Traces details will now link to the downstream Transaction Trace if there is one. Additionally, the segment name will now include the name of the downstream application and the name of the downstream transaction.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Update attribute names of Datastore and External segments on Transaction Traces to be in line with attribute names on Spans. Specifically:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&quot;uri&quot;&lt;/code&gt; =&gt; &lt;code&gt;&quot;http.url&quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&quot;query&quot;&lt;/code&gt; =&gt; &lt;code&gt;&quot;db.statement&quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&quot;database_name&quot;&lt;/code&gt; =&gt; &lt;code&gt;&quot;db.instance&quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&quot;host&quot;&lt;/code&gt; =&gt; &lt;code&gt;&quot;peer.hostname&quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&quot;port_path_or_id&quot;&lt;/code&gt; + &lt;code&gt;&quot;host&quot;&lt;/code&gt; =&gt; &lt;code&gt;&quot;peer.address&quot;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 12 Mar 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.7]]></title><guid isPermaLink="false">R28gYWdlbnQtMi43</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-27</link><pubDate>Tue, 26 Mar 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.7.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for server side configuration. Server side configuration allows you to set the following configuration settings in the New Relic APM UI:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Config.TransactionTracer.Enabled&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Config.ErrorCollector.Enabled&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Config.CrossApplicationTracer.Enabled&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Config.TransactionTracer.Threshold&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Config.TransactionTracer.StackTraceThreshold&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Config.ErrorCollector.IgnoreStatusCodes&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information see the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/configuration/server-side-agent-configuration&quot;&gt;server side configuration documentation&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for AWS Lambda functions in the new &lt;a href=&quot;https://github.com/newrelic/go-agent/tree/master/_integrations/nrlambda&quot;&gt;nrlambda&lt;/a&gt; package. Please email &lt;a href=&quot;mailto:lambda_preview@newrelic.com&quot;&gt;lambda_preview@newrelic.com&lt;/a&gt; if you are interested in learning more or previewing New Relic Lambda monitoring. This instrumentation package requires &lt;code&gt;aws-lambda-go&lt;/code&gt; version &lt;a href=&quot;https://github.com/aws/aws-lambda-go/releases&quot;&gt;v1.9.0&lt;/a&gt; or higher.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrlambda&quot;&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrlambda/example/main.go&quot;&gt;Working example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 26 Mar 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.8.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMi44LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-281</link><pubDate>Tue, 18 Jun 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.8.1&lt;/h2&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Removed &lt;code&gt;nrmysql.NewConnector&lt;/code&gt; since &lt;a href=&quot;https://github.com/go-sql-driver/mysql&quot;&gt;go-sql-driver/mysql&lt;/a&gt; has not yet released &lt;code&gt;mysql.NewConnector&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 18 Jun 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.8]]></title><guid isPermaLink="false">R28gYWdlbnQtMi44</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-28</link><pubDate>Tue, 11 Jun 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.8.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Support for Real Time Streaming&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;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 more information on how to view your events with a five-second refresh, see the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/manage-apm-agents/agent-data/real-time-streaming&quot;&gt;real time streaming documentation&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Note that the overall limits on how many events can be sent per minute have not changed. Also, span events, metrics, and trace data is unaffected, and will still be sent every minute.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Introduce support for databases using &lt;a href=&quot;https://golang.org/pkg/database/sql/&quot;&gt;database/sql&lt;/a&gt;. This new functionality allows you to instrument MySQL, PostgreSQL, and SQLite calls without manually creating &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#DatastoreSegment&quot;&gt;DatastoreSegment&lt;/a&gt;s.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;p&gt;Database Library Supported&lt;/p&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;Integration Package&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;p&gt;&lt;a href=&quot;https://github.com/go-sql-driver/mysql&quot;&gt;go-sql-driver/mysql&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrmysql&quot;&gt;_integrations/nrmysql&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;p&gt;&lt;a href=&quot;https://github.com/lib/pq&quot;&gt;lib/pq&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrpq&quot;&gt;_integrations/nrpq&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;p&gt;&lt;a href=&quot;https://github.com/mattn/go-sqlite3&quot;&gt;mattn/go-sqlite3&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrsqlite3&quot;&gt;_integrations/nrsqlite3&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Using these database integration packages is easy! First replace the driver with our integration version:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;import (
    // import our integration package
    _ &quot;github.com/newrelic/go-agent/_integrations/nrmysql&quot;
  )

  func main() {
    // open &quot;nrmysql&quot; in place of &quot;mysql&quot;
    db, err := sql.Open(&quot;nrmysql&quot;, &quot;user@unix(/path/to/socket)/dbname&quot;)
  }
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Second, use the &lt;code&gt;ExecContext&lt;/code&gt;, &lt;code&gt;QueryContext&lt;/code&gt;, and &lt;code&gt;QueryRowContext&lt;/code&gt; methods of &lt;a href=&quot;https://golang.org/pkg/database/sql/#DB&quot;&gt;sql.DB&lt;/a&gt;, &lt;a href=&quot;https://golang.org/pkg/database/sql/#Conn&quot;&gt;sql.Conn&lt;/a&gt;, &lt;a href=&quot;https://golang.org/pkg/database/sql/#Tx&quot;&gt;sql.Tx&lt;/a&gt;, and &lt;a href=&quot;https://golang.org/pkg/database/sql/#Stmt&quot;&gt;sql.Stmt&lt;/a&gt; and provide a transaction-containing context. Calls to &lt;code&gt;Exec&lt;/code&gt;, &lt;code&gt;Query&lt;/code&gt;, and &lt;code&gt;QueryRow&lt;/code&gt; do not get instrumented.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;ctx := newrelic.NewContext(context.Background(), txn)
  row := db.QueryRowContext(ctx, &quot;SELECT count(*) from tables&quot;)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If you are using a &lt;a href=&quot;https://golang.org/pkg/database/sql/&quot;&gt;database/sql&lt;/a&gt; database not listed above, you can write your own instrumentation for it using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#InstrumentSQLConnector&quot;&gt;InstrumentSQLConnector&lt;/a&gt;, &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#InstrumentSQLDriver&quot;&gt;InstrumentSQLDriver&lt;/a&gt;, and &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#SQLDriverSegmentBuilder&quot;&gt;SQLDriverSegmentBuilder&lt;/a&gt;. The integration packages act as examples of how to do this.&lt;/p&gt;
&lt;p&gt;For more information, see the &lt;a href=&quot;https://docs.newrelic.com/docs/agents/go-agent/instrumentation/instrument-go-segments#go-datastore-segments&quot;&gt;Go agent documentation on instrumenting datastore segments&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;a href=&quot;https://golang.org/pkg/net/http/#RoundTripper&quot;&gt;http.RoundTripper&lt;/a&gt; returned by &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#NewRoundTripper&quot;&gt;NewRoundTripper&lt;/a&gt; no longer modifies the request. Our thanks to @jlordiales for the contribution.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 11 Jun 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v2.9.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMi45LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-290</link><pubDate>Wed, 10 Jul 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;2.9.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://github.com/grpc/grpc-go&quot;&gt;gRPC&lt;/a&gt; monitoring with the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrgrpc&quot;&gt;_integrations/nrgrpc&lt;/a&gt; package. This package supports instrumentation for servers and clients.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrgrpc/example/server/server.go&quot;&gt;Server Example&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/_integrations/nrgrpc/example/client/client.go&quot;&gt;Client Example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#ExternalSegment&quot;&gt;ExternalSegment&lt;/a&gt; fields &lt;code&gt;Host&lt;/code&gt;, &lt;code&gt;Procedure&lt;/code&gt;, and &lt;code&gt;Library&lt;/code&gt;. These optional fields are automatically populated from the segment&apos;s &lt;code&gt;URL&lt;/code&gt; or &lt;code&gt;Request&lt;/code&gt; if unset. Use them if you don&apos;t have access to a request or URL but still want useful external metrics, transaction segment attributes, and span attributes.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Host&lt;/code&gt; is used for external metrics, transaction trace segment names, and span event names. The host of segment&apos;s &lt;code&gt;Request&lt;/code&gt; or &lt;code&gt;URL&lt;/code&gt; is the default.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Procedure&lt;/code&gt; is used for transaction breakdown metrics. If set, it should be set to the remote procedure being called. The HTTP method of the segment&apos;s &lt;code&gt;Request&lt;/code&gt; is the default.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Library&lt;/code&gt; is used for external metrics and the &lt;code&gt;&quot;component&quot;&lt;/code&gt; span attribute. If set, it should be set to the framework making the call. &lt;code&gt;&quot;http&quot;&lt;/code&gt; is the default.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;With the addition of these new fields, external transaction breakdown metrics are changed: &lt;code&gt;External/myhost.com/all&lt;/code&gt; will now report as &lt;code&gt;External/myhost.com/http/GET&lt;/code&gt; (provided the HTTP method is &lt;code&gt;GET&lt;/code&gt;).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;HTTP Response codes below &lt;code&gt;100&lt;/code&gt;, except &lt;code&gt;0&lt;/code&gt; and &lt;code&gt;5&lt;/code&gt;, are now recorded as errors. This is to support &lt;code&gt;gRPC&lt;/code&gt; status codes. If you start seeing new status code errors that you would like to ignore, add them to &lt;code&gt;Config.ErrorCollector.IgnoreStatusCodes&lt;/code&gt; or your server side configuration settings.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Improve &lt;a href=&quot;https://github.com/sirupsen/logrus&quot;&gt;logrus&lt;/a&gt; support by introducing &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrlogrus#Transform&quot;&gt;nrlogrus.Transform&lt;/a&gt;, a function which allows you to turn a &lt;a href=&quot;https://godoc.org/github.com/sirupsen/logrus#Logger&quot;&gt;logrus.Logger&lt;/a&gt; instance into a &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent#Logger&quot;&gt;newrelic.Logger&lt;/a&gt;. Example use:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;l := logrus.New()
l.SetLevel(logrus.DebugLevel)
cfg := newrelic.NewConfig(&quot;Your Application Name&quot;, &quot;__YOUR_NEW_RELIC_LICENSE_KEY__&quot;)
cfg.Logger = nrlogrus.Transform(l)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;As a result of this change, the &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/_integrations/nrlogrus&quot;&gt;nrlogrus&lt;/a&gt; package requires &lt;a href=&quot;https://github.com/sirupsen/logrus&quot;&gt;logrus&lt;/a&gt; version &lt;code&gt;v1.1.0&lt;/code&gt; and above.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 10 Jul 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.12.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xMi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-12-0</link><pubDate>Mon, 03 May 2021 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.12.0&lt;/h2&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated &lt;code&gt;CHANGELOG.md&lt;/code&gt; release notes language, to correct typographical errors and clean up grammar. &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/289&quot;&gt;#289&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;When using DAX to query a dynamodb table, the New Relic instrumentation panics with a &lt;code&gt;nil dereference&lt;/code&gt; error. This was due to the way that the request is made internally such that there is no &lt;code&gt;HTTPRequest.Header&lt;/code&gt; defined, but one was expected. This correction checks for the existence of that header and takes an appropriate course of action if one is not found. &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/287&quot;&gt;#287&lt;/a&gt; Thanks to @odannyc for reporting the issue and providing a pull request with a suggested fix.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 03 May 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.13.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xMy4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-13-0</link><pubDate>Wed, 02 Jun 2021 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.13.0&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;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 &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/250&quot;&gt;#250&lt;/a&gt; and &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/288&quot;&gt;#288&lt;/a&gt; are fixed by this PR. &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/309&quot;&gt;#309&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes issue &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/221&quot;&gt;#221&lt;/a&gt;: grpc errors reported in code watched by &lt;code&gt;UnaryServerInterceptor()&lt;/code&gt; or &lt;code&gt;StreamServerInterceptor()&lt;/code&gt; now create error events which are reported to the UI with the error message string included.  &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/317&quot;&gt;#317&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Fixes documentation in &lt;code&gt;GUIDE.md&lt;/code&gt; for &lt;code&gt;txn.StartExternalSegment()&lt;/code&gt; to reflect the v3 usage. Thanks to @abeltay for calling this to our attention and submitting PR &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/320&quot;&gt;#320&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The v3/examples/server/main.go example now uses &lt;code&gt;newrelic.ConfigFromEnvironment()&lt;/code&gt;, rather than explicitly pulling in the license key with &lt;code&gt;newrelic.ConfigLicense(os.Getenv(&quot;NEW_RELIC_LICENSE_KEY&quot;))&lt;/code&gt;. The team is starting to use this as a general systems integration testing script, and this facilitates testing with different settings enabled.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 02 Jun 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.14.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xNC4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-14-1</link><pubDate>Tue, 20 Jul 2021 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.14.1&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;A typographical error in the nrgrpc unit tests was fixed. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/344&quot;&gt;Issue #344&lt;/a&gt;.
This updates the nrgrpc integration to version 1.3.1.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 20 Jul 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.14.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xNC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-14-0</link><pubDate>Mon, 12 Jul 2021 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.14.0&lt;/h2&gt;
&lt;h2&gt;Fixed&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Integration tags and &lt;code&gt;go.mod&lt;/code&gt; files for integrations were updated so that &lt;a href=&quot;&quot;&gt;pkg.go.dev&lt;/a&gt; displays the documentation for each integration correctly.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;nrgrpc&lt;/code&gt; server integration was reporting all non-&lt;code&gt;OK&lt;/code&gt; 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 &quot;warnings&quot; or &quot;informational&quot; 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.
&lt;ul&gt;
&lt;li&gt;This is implemented by adding &lt;code&gt;WithStatusHandler()&lt;/code&gt; options to the end of the &lt;code&gt;UnaryServerInterceptor()&lt;/code&gt; and &lt;code&gt;StreamServerInterceptor()&lt;/code&gt; calls, thus extending the capability of those functions while retaining the existing functionality and usage syntax for backward compatibility.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added advice on the recommended usage of the &lt;code&gt;app.WaitForConnection()&lt;/code&gt; method. Fixes [https://github.com/newrelic/go-agent/issues/296](Issue #296)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Added&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Added a convenience function to build distributed trace header set from a JSON string for use with the &lt;code&gt;AcceptDistributedTraceHeaders()&lt;/code&gt; 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 &lt;code&gt;http.Header&lt;/code&gt; type value.
&lt;ul&gt;
&lt;li&gt;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.&lt;/li&gt;
&lt;li&gt;This new function, &lt;code&gt;DistributedTraceHeadersFromJSON()&lt;/code&gt;, creates the required &lt;code&gt;http.Header&lt;/code&gt; value from the JSON string without requiring manual effort on your part.&lt;/li&gt;
&lt;li&gt;We also provide a new all-in-one method &lt;code&gt;AcceptDistributedTraceHeadersFromJSON()&lt;/code&gt; to be used in place of &lt;code&gt;AcceptDistributedTraceHeaders()&lt;/code&gt;. It accepts a JSON string rather than an &lt;code&gt;http.Header&lt;/code&gt;, adding its trace info to the new transaction in one step.&lt;/li&gt;
&lt;li&gt;Fixes [https://github.com/newrelic/go-agent/issues/331](Issue #331)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Improved the NR AWS SDK V2 integration to use the current transaction rather than the one passed in during middleware creation, if &lt;code&gt;nil&lt;/code&gt; is passed into nrawssdk-v2.AppendMiddlewares. Thanks to @HenriBeck for noticing and suggesting improvement, and thanks to @nc-wittj for the fantastic PR! &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/328&quot;&gt;#328&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Support Statement&lt;/h2&gt;
&lt;p&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.&lt;/p&gt;</content:encoded><description>ReleasedOn: Mon, 12 Jul 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.15.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xNS4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-15-1</link><pubDate>Wed, 27 Oct 2021 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.15.1&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;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 &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/397&quot;&gt;Issue #397&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Updated the &lt;code&gt;go.mod&lt;/code&gt; file in the &lt;code&gt;nrecho-v4&lt;/code&gt; integration to require version 4.5.0 of the &lt;code&gt;github.com/labstack/echo&lt;/code&gt; package. This addresses a security concern arising from downstream dependencies in older versions of the echo package, as described in the &lt;a href=&quot;https://github.com/labstack/echo/releases/tag/v4.5.0&quot;&gt;release notes&lt;/a&gt; for &lt;code&gt;echo&lt;/code&gt; v4.5.0.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;ARM64 Compatibility Note&lt;/h3&gt;
&lt;p&gt;The New Relic Go Agent is implemented in platform-independent Go, and supports (among the other platforms which run Go) ARM64/Graviton2 using Go 1.17+.&lt;/p&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 27 Oct 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.15.2]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xNS4y</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-15-2</link><pubDate>Mon, 06 Dec 2021 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.15.2&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Strings logged via the Go agent&apos;s built-in logger will have strings of the form &lt;code&gt;license_key=&lt;/code&gt;&lt;em&gt;hex-string&lt;/em&gt; changed to &lt;code&gt;license_key=[redacted]&lt;/code&gt; before they are output, regardless of severity level, where &lt;em&gt;hex-string&lt;/em&gt; means a sequence of upper- or lower-case hexadecimal digits and dots (&apos;.&apos;). This incorporates &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/415&quot;&gt;PR #415&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;</content:encoded><description>ReleasedOn: Mon, 06 Dec 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.15.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xNS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-15-0</link><pubDate>Thu, 02 Sep 2021 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.15.0&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Updated mongodb driver version to 1.5.1 to fix security issue in external dependency. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/358&quot;&gt;Issue #358&lt;/a&gt; and &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/370&quot;&gt;Issue #370&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Updated the &lt;code&gt;go.mod&lt;/code&gt; file in the &lt;code&gt;nrgin&lt;/code&gt; integration to require version 1.7.0 of the &lt;code&gt;github.com/gin-gonic/gin&lt;/code&gt; package. This addresses &lt;a href=&quot;https://github.com/advisories/GHSA-h395-qcrw-5vmq&quot;&gt;CVE-2020-28483&lt;/a&gt; which documents a vulnerability in versions of &lt;code&gt;github.com/gin-gonic/gin&lt;/code&gt; earlier than 1.7.0.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New integration &lt;code&gt;nrpgx&lt;/code&gt; added to provide the same functionality for instrumenting Postgres database queries as the existing &lt;code&gt;nrpq&lt;/code&gt; integration, but using the &lt;a href=&quot;https://github.com/jackc/pgx&quot;&gt;pgx&lt;/a&gt; driver instead. This only covers (at present) the use case of the &lt;code&gt;pgx&lt;/code&gt; driver with the standard library &lt;code&gt;database/sql&lt;/code&gt;. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/142&quot;&gt;Issue #142&lt;/a&gt; and &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/292&quot;&gt;Issue #292&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Enhanced debugging logs so that New Relic license keys are redacted from the log output. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/353&quot;&gt;Issue #353&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Updated the advice in &lt;code&gt;GUIDE.md&lt;/code&gt; to have correct &lt;code&gt;go get&lt;/code&gt; commands with explicit reference to &lt;code&gt;v3&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 02 Sep 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.16.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xNi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-16-0</link><pubDate>Thu, 19 May 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.16.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Distributed Tracing is now the default mode of operation. It may be disabled by user configuration if so desired. &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/495&quot;&gt;PR #495&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;To disable DT, add &lt;code&gt;newrelic.ConfigDistributedTracerEnabled(false)&lt;/code&gt; to your application configuration.&lt;/li&gt;
&lt;li&gt;To change the reservoir limit for how many span events are to be collected per harvest cycle from the default, add &lt;code&gt;newrelic.ConfigDistributedTracerReservoirLimit(&lt;/code&gt;&lt;em&gt;newlimit&lt;/em&gt;&lt;code&gt;)&lt;/code&gt; to your application configuration.&lt;/li&gt;
&lt;li&gt;The reservoir limit&apos;s default was increased from 1000 to 2000.&lt;/li&gt;
&lt;li&gt;The maximum reservoir limit supported is 10,000.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Note that Cross Application Tracing is now deprecated.&lt;/li&gt;
&lt;li&gt;Added support for gathering memory statistics via &lt;code&gt;PhysicalMemoryBytes&lt;/code&gt; functions for OpenBSD.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Corrected some example code to be cleaner.&lt;/li&gt;
&lt;li&gt;Updated version of nats-streaming-server. &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/458&quot;&gt;PR #458&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Correction to nrpkgerrors so that &lt;code&gt;nrpkgerrors.Wrap&lt;/code&gt;  now checks if the error it is passed has attributes, and if it does, copies them into the New Relic error it creates.
This fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/409&quot;&gt;issue #409&lt;/a&gt; via &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/441&quot;&gt;PR #441&lt;/a&gt;.
&lt;ul&gt;
&lt;li&gt;This increments the &lt;code&gt;nrpkgerrors&lt;/code&gt; version to v1.1.0.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 19 May 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.16.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xNi4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-16-1</link><pubDate>Thu, 26 May 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.16.1&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Changed dependency on gRPC from v1.27.0 to v1.39.0. This in turn changes gRPC&apos;s dependency on &lt;code&gt;x/crypto&lt;/code&gt; to v0.0.0-20200622213623-75b288015ac9, which fixes a security vulnerability in the &lt;code&gt;x/crypto&lt;/code&gt; standard library module. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/451&quot;&gt;issue #451&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Incremented version number of the &lt;code&gt;nrawssdk-v1&lt;/code&gt; integration from v1.0.1 to v1.1.0 to resolve an incompatibility issue due to changes to underlying code. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/499&quot;&gt;issue #499&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 26 May 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.17.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xNy4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-17-0</link><pubDate>Wed, 29 Jun 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.17.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Logs in context now supported for zerolog.&lt;/li&gt;
&lt;li&gt;This is a quick way to view logs no matter where you are in the platform.
&lt;ul&gt;
&lt;li&gt;Adds support for logging metrics which shows the rate of log messages by severity in the Logs chart in the APM Summary view. This is enabled by default in this release.&lt;/li&gt;
&lt;li&gt;Adds support for forwarding application logs to New Relic. This automatically sends application logs that have been enriched to power APM logs in context. This is disabled by default in this release. This will be on by default in a future release.&lt;/li&gt;
&lt;li&gt;To learn more about APM logs in context see the documentation &lt;a href=&quot;https://docs.newrelic.com/docs/logs/logs-context/logs-in-context&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Includes the &lt;code&gt;RecordLog&lt;/code&gt; function for recording log data from a single log entry&lt;/li&gt;
&lt;li&gt;An integrated plugin for zerolog to automatically ingest log data with the Go Agent.&lt;/li&gt;
&lt;li&gt;Resolves &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/178&quot;&gt;issue 178&lt;/a&gt;, &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/488&quot;&gt;issue 488&lt;/a&gt;, &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/489&quot;&gt;issue 489&lt;/a&gt;, &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/490&quot;&gt;issue 490&lt;/a&gt;, and &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/491&quot;&gt;issue 491&lt;/a&gt; .&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added integration for MS SQL Server (&lt;a href=&quot;https://github.com/newrelic/go-agent/pull/425&quot;&gt;PR 425&lt;/a&gt;; thanks @ishahid91!)
&lt;ul&gt;
&lt;li&gt;This introduces the &lt;code&gt;nrmssql&lt;/code&gt; integration v1.0.0.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added config function &lt;code&gt;ConfigCustomInsightsEventsMaxSamplesStored&lt;/code&gt; for limiting the number of samples stored in a custom insights event. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/476&quot;&gt;issue 476&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Improved speed of building distributed trace header JSON payload. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/505&quot;&gt;issue 505&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Renamed the gRPC attribute names from  &lt;code&gt;GrpcStatusLevel&lt;/code&gt;, &lt;code&gt;GrpcStatusMessage&lt;/code&gt;, and &lt;code&gt;GrpcStatusCode&lt;/code&gt; to &lt;code&gt;grpcStatusLevel&lt;/code&gt;, &lt;code&gt;grpcStatusMessage&lt;/code&gt;, and &lt;code&gt;grpcStatusCode&lt;/code&gt; respectively, to conform to existing naming conventions for New Relic agents. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/492&quot;&gt;issue 492&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Updated &lt;code&gt;go.mod&lt;/code&gt; for the &lt;code&gt;nrgin&lt;/code&gt; integration to mitigate security issue in 3rd party dependency.&lt;/li&gt;
&lt;li&gt;Updated &lt;code&gt;go.mod&lt;/code&gt; for the &lt;code&gt;nrawssdk-v1&lt;/code&gt; integration to properly reflect its dependency on version 3.16.0 of the Go Agent.&lt;/li&gt;
&lt;li&gt;Updated &lt;code&gt;go.mod&lt;/code&gt; for the &lt;code&gt;nrlambda&lt;/code&gt; integration to require &lt;code&gt;aws-lambda-go&lt;/code&gt; version 1.20.0. (&lt;a href=&quot;https://github.com/newrelic/go-agent/pull/356&quot;&gt;PR 356&lt;/a&gt;; thanks MattWhelan!)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Note that the oldest supported version of the Go Agent is 2.11.0.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 29 Jun 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.18.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xOC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-18-0</link><pubDate>Mon, 01 Aug 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.18.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Code-level metrics are now available for instrumented transactions. This is off by default but once enabled via &lt;code&gt;ConfigCodeLevelMetricsEnabled(true)&lt;/code&gt; transactions will include information about the location in the source code where &lt;code&gt;StartTransaction&lt;/code&gt; was invoked.
&lt;ul&gt;
&lt;li&gt;Adds information about where in your source code transaction traces originated.&lt;/li&gt;
&lt;li&gt;See the Go agent documentation for details on &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/configuration/go-agent-code-level-metrics-config&quot;&gt;configuring&lt;/a&gt; code-level metrics and how to &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/instrumentation/go-agent-code-level-metrics-instrument&quot;&gt;instrument&lt;/a&gt; your code using them.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;New V2 logs-in-context plugin is available for Logrus, packed with all the features you didn&apos;t know you wanted:
&lt;ul&gt;
&lt;li&gt;Automatic log forwarding&lt;/li&gt;
&lt;li&gt;Log metrics&lt;/li&gt;
&lt;li&gt;Capture logs anywhere in your code; both inside or outside of a transaction.&lt;/li&gt;
&lt;li&gt;Use the Logrus formatting package of your choice&lt;/li&gt;
&lt;li&gt;Local log decorating is now available for the new logcontext-v2/nrlogrus plugin only. This is off by default but can be enabled with &lt;code&gt;ConfigAppLogForwardingEnabled(true)&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed issue with custom event limits and number of distributed tracing spans to more accurately follow configured limits.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Compatibility Notice&lt;/h3&gt;
&lt;p&gt;This release extends the API by allowing custom options to be added to calls to the &lt;code&gt;Application.StartTransaction&lt;/code&gt; method and the &lt;code&gt;WrapHandle&lt;/code&gt; and &lt;code&gt;WrapHandleFunc&lt;/code&gt; functions. They are implemented as variadic functions such that the new option parameters are optional (i.e., zero or more options may be added to the end of the function calls) to be backward-compatible with pre-3.18.0 usage of those functions.
This prevents the changes from breaking existing code for typical usage of the agent. However, it does mean those functions&apos; call signatures have changed:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;StartTransaction(string)&lt;/code&gt; -&gt; &lt;code&gt;StartTransaction(string, ...TraceOption)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WrapHandle(*Application, string, http.Handler)&lt;/code&gt; -&gt; &lt;code&gt;WrapHandle(*Application, string, http.Handler, ...TraceOption)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WrapHandleFunc(*Application, string, func(http.ResponseWriter, *http.Request))&lt;/code&gt; -&gt; &lt;code&gt;WrapHandleFunc(*Application, string, func(http.ResponseWriter, *http.Request), ...TraceOption)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If, for example, you created your own custom interface type which includes the &lt;code&gt;StartTransaction&lt;/code&gt; method or something that depends on these functions&apos; exact call semantics, that code will need to be updated accordingly before using version 3.18.0 of the Go Agent.&lt;/p&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Note that the oldest supported version of the Go agent is 2.11.0.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 01 Aug 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.18.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xOC4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-18-1</link><pubDate>Thu, 18 Aug 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.18.1&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Extended the &lt;code&gt;IgnoredPrefix&lt;/code&gt; configuration value for Code-Level Metrics so that multiple such prefixes may be given instead of a single one. This deprecates the &lt;code&gt;IgnoredPrefix&lt;/code&gt; configuration field of &lt;code&gt;Config.CodeLevelMetrics&lt;/code&gt; in favor of a new slice field &lt;code&gt;IgnoredPrefixes&lt;/code&gt;. The corresponding configuration option-setting functions &lt;code&gt;ConfigCodeLevelMetricsIgnoredPrefix&lt;/code&gt; and &lt;code&gt;WithIgnoredPrefix&lt;/code&gt; now take any number of string parameters to set these values. Since those functions used to take a single string value, this change is backward-compatible with pre-3.18.1 code.  Accordingly, the &lt;code&gt;NEW_RELIC_CODE_LEVEL_METRICS_IGNORED_PREFIX&lt;/code&gt; environment variable is now a comma-separated list of prefixes.  Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/551&quot;&gt;Issue #551&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Corrected some small errors in documentation of package features. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/550&quot;&gt;Issue #550&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Compatibility Notice&lt;/h3&gt;
&lt;p&gt;As of release 3.18.0, the API was extended by allowing custom options to be added to calls to the &lt;code&gt;Application.StartTransaction&lt;/code&gt; method and the &lt;code&gt;WrapHandle&lt;/code&gt; and &lt;code&gt;WrapHandleFunc&lt;/code&gt; functions. They are implemented as variadic functions such that the new option parameters are optional (i.e., zero or more options may be added to the end of the function calls) to be backward-compatible with pre-3.18.0 usage of those functions. This prevents the changes from breaking existing code for typical usage of the agent. However, it does mean those functions&apos; call signatures have changed:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;StartTransaction(string)&lt;/code&gt; -&gt; &lt;code&gt;StartTransaction(string, ...TraceOption)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WrapHandle(*Application, string, http.Handler)&lt;/code&gt; -&gt; &lt;code&gt;WrapHandle(*Application, string, http.Handler, ...TraceOption)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WrapHandleFunc(*Application, string, func(http.ResponseWriter, *http.Request))&lt;/code&gt;	-&gt; &lt;code&gt;WrapHandleFunc(*Application, string, func(http.ResponseWriter, *http.Request), ...TraceOption)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If, for example, you created your own custom interface type which includes the &lt;code&gt;StartTransaction&lt;/code&gt; method or something that depends on these functions&apos; exact call semantics, that code will need to be updated accordingly before using version 3.18.0 (or later) of the Go Agent.&lt;/p&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go Agent EOL Policy&lt;/a&gt; for details about supported versions of the Go Agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 18 Aug 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.18.2]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xOC4y</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-18-2</link><pubDate>Wed, 07 Sep 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.18.2&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;WithDefaultFunctionLocation&lt;/code&gt; trace option. This allows the caller to indicate a fall-back function to use for CLM in case no other location was found first.&lt;/li&gt;
&lt;li&gt;Added caching versions of the code-level metrics functions &lt;code&gt;ThisCodeLocation&lt;/code&gt; and &lt;code&gt;FunctionLocation&lt;/code&gt; , and trace options &lt;code&gt;WithThisCodeLocation&lt;/code&gt;  and  &lt;code&gt;WithFunctionLocation&lt;/code&gt;. These improve performance by caching the result of computing the source code location, and reuse that cached result on all subsequent calls.&lt;/li&gt;
&lt;li&gt;Added a &lt;code&gt;WithCodeLevelMetrics&lt;/code&gt; trace option to force the collection of CLM data even if it would have been excluded as being out of the configured scope. (Note that CLM data are never collected if CLM is turned off globally or if the &lt;code&gt;WithoutCodeLevelMetrics&lt;/code&gt; option was specified for the same transaction.)&lt;/li&gt;
&lt;li&gt;Added an exported &lt;code&gt;CodeLevelMetricsScopeLabelToValue&lt;/code&gt; function to convert a list of strings describing CLM scopes in the same manner as the &lt;code&gt;NEW_RELIC_CODE_LEVEL_METRICS_SCOPE&lt;/code&gt; environment variable (but as individual string parameters), returning the &lt;code&gt;CodeLevelMetricsScope&lt;/code&gt; value which corresponds to that set of scopes.&lt;/li&gt;
&lt;li&gt;Added a new &lt;code&gt;CodeLevelMetricsScopeLabelListToValue&lt;/code&gt; function which takes a comma-separated list of scope names exactly as the &lt;code&gt;NEW_RELIC_CODE_LEVEL_METRICS_SCOPE&lt;/code&gt; environment variable does, and returns the &lt;code&gt;CodeLevelMetrics&lt;/code&gt; value corresponding to that set of scopes.&lt;/li&gt;
&lt;li&gt;Added text marshaling and unmarshaling for the &lt;code&gt;CodeLevelMetricsScope&lt;/code&gt; value, allowing the &lt;code&gt;CodeLevelMetrics&lt;/code&gt; field of the configuration &lt;code&gt;struct&lt;/code&gt; to be converted to or from JSON or other text-based encoding representations.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;WithPathPrefix&lt;/code&gt; trace option now takes any number of &lt;code&gt;string&lt;/code&gt; parameters, allowing multiple path prefixes to be recognized rather than just one.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;FunctionLocation&lt;/code&gt; function now accepts any number of function values instead of just a single one. The first such parameter which indicates a valid function, and for which CLM data are successfully obtained, is the one which will be reported.&lt;/li&gt;
&lt;li&gt;The configuration &lt;code&gt;struct&lt;/code&gt; field &lt;code&gt;PathPrefix&lt;/code&gt; is now deprecated with the introduction of a new &lt;code&gt;PathPrefixes&lt;/code&gt; field. This allows for multiple path prefixes to be given to the agent instead of only a single one.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;NEW_RELIC_CODE_LEVEL_METRICS_SCOPE&lt;/code&gt; environment variable now accepts a comma-separated list of pathnames.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Improved the implementation of CLM internals to improve speed, robustness, and thread safety.&lt;/li&gt;
&lt;li&gt;Corrected the implementation of the &lt;code&gt;WrapHandle&lt;/code&gt; and &lt;code&gt;WrapHandleFunc&lt;/code&gt; functions so that they consistently report the function being invoked by the &lt;code&gt;http&lt;/code&gt; framework, and improved them to use the new caching functions and ensured they are thread-safe.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This release fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/557&quot;&gt;issue #557&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Compatibility Notice&lt;/h3&gt;
&lt;p&gt;As of release 3.18.0, the API was extended by allowing custom options to be added to calls to the &lt;code&gt;Application.StartTransaction&lt;/code&gt; method and the &lt;code&gt;WrapHandle&lt;/code&gt;  and &lt;code&gt;WrapHandleFunc&lt;/code&gt; functions. They are implemented as variadic functions such that the new option parameters are optional (i.e., zero or more options may be added to the end of the function calls) to be backward-compatible with pre-3.18.0 usage of those functions. This prevents the changes from breaking existing code for typical usage of the agent. However, it does mean those functions&apos; call signatures have changed:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;StartTransaction(string)&lt;/code&gt; -&gt; &lt;code&gt;StartTransaction(string, ...TraceOption)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WrapHandle(*Application, string, http.Handler)&lt;/code&gt; -&gt; &lt;code&gt;WrapHandle(*Application, string, http.Handler, ...TraceOption)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WrapHandleFunc(*Application, string, func(http.ResponseWriter, *http.Request))&lt;/code&gt;    -&gt; &lt;code&gt;WrapHandleFunc(*Application, string, func(http.ResponseWriter, *http.Request), ...TraceOption)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If, for example, you created your own custom interface type which includes the &lt;code&gt;StartTransaction&lt;/code&gt; method or something that depends on these functions&apos; exact  call semantics, that code will need to be updated accordingly before using version 3.18.0 (or later) of the Go Agent.&lt;/p&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go Agent EOL Policy&lt;/a&gt; for details about supported versions of the Go Agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 07 Sep 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.19.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xOS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-19-0</link><pubDate>Thu, 15 Sep 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.19.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;logcontext-v2/logWriter&lt;/code&gt; plugin: a new logs in context plugin that supports the standard library logging package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;logcontext-v2/zerologWriter&lt;/code&gt; plugin: a new logs in context plugin for zerolog that will replace the old logcontext-v2/zerolog plugin. This plugin is more robust, and will be able to support a richer set of features than the previous plugin.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;see the updated &lt;a href=&quot;https://docs.newrelic.com/docs/logs/logs-context/configure-logs-context-go&quot;&gt;logs in context documentation&lt;/a&gt; for information about configuration and installation.&lt;/p&gt;
&lt;h3&gt;Changed&lt;/h3&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;the logcontext-v2/zerolog plugin will be deprecated once the 3.17.0 release EOLs.&lt;/p&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go Agent EOL Policy&lt;/a&gt; for details about supported versions of the Go Agent and third-party components.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 15 Sep 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.19.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xOS4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-19-1</link><pubDate>Fri, 16 Sep 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.19.1 - Hotfix Release&lt;/h2&gt;
&lt;h3&gt;Changed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Moved the v3/internal/logcontext/nrwriter module to v3/integrations/logcontext-v2/nrwriter&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;See the Go Agent EOL Policy for details about supported versions of the Go Agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Fri, 16 Sep 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.19.2]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xOS4y</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-19-2</link><pubDate>Wed, 21 Sep 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.19.2&lt;/h2&gt;
&lt;h3&gt;Changed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated nrgin integration to more accurately report code locations when code level metrics are enabled.&lt;/li&gt;
&lt;li&gt;The Go Agent and all integrations now require Go version 1.17 or later.&lt;/li&gt;
&lt;li&gt;Updated minimum versions for third-party modules.
&lt;ul&gt;
&lt;li&gt;nrawssdk-v2, nrecho-v4, nrgrpc, nrmongo, nrmysql, nrnats, and nrstan now require Go Agent 3.18.2 or later&lt;/li&gt;
&lt;li&gt;the Go Agent now requires protobuf 1.5.2 and grpc 1.49.0&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Internal dev process and unit test improvements.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;We also recommend using the latest version of the Go language. At minimum, you should at least be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go Agent EOL Policy&lt;/a&gt; for details about supported versions of the Go Agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 21 Sep 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.20.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMC4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-20-1</link><pubDate>Tue, 15 Nov 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.20.1&lt;/h2&gt;
&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it’s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New integration &lt;code&gt;nrpgx5&lt;/code&gt; v1.0.0 to instrument &lt;code&gt;github.com/jackc/pgx/v5&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Changed the following &lt;code&gt;TraceOption&lt;/code&gt; function to be consistent with their usage and other related identifier names. The old names remain for backward compatibility, but new code should use the new names.
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;WithIgnoredPrefix&lt;/code&gt; -&gt; &lt;code&gt;WithIgnoredPrefixes&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WithPathPrefix&lt;/code&gt; -&gt; &lt;code&gt;WithPathPrefixes&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Implemented better handling of Code Level Metrics reporting when the data (e.g., function names) are excessively long, so that those attributes are suppressed rather than being reported with truncated names. Specifically:
&lt;ul&gt;
&lt;li&gt;Attributes with values longer than 255 characters are dropped.&lt;/li&gt;
&lt;li&gt;No CLM attributes at all will be attached to a trace if the &lt;code&gt;code.function&lt;/code&gt; attribute is empty or is longer than 255 characters.&lt;/li&gt;
&lt;li&gt;No CLM attributes at all will be attached to a trace if both &lt;code&gt;code.namespace&lt;/code&gt; and &lt;code&gt;code.filepath&lt;/code&gt; are longer than 255 characters.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 15 Nov 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.20.2]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMC4y</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-20-2</link><pubDate>Wed, 14 Dec 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.20.2&lt;/h2&gt;
&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it’s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;New &lt;code&gt;NoticeExpectedError()&lt;/code&gt; method allows you to capture errors that you are expecting to handle, without triggering alerts&lt;/p&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;More defensive harvest cycle code that will avoid crashing even in the event of a panic&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Update &lt;code&gt;nats-server&lt;/code&gt; version to avoid known zip-slip exploit&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Update &lt;code&gt;labstack/echo&lt;/code&gt; version to mitigate known open redirect exploit&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 14 Dec 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.20.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-20-0</link><pubDate>Wed, 02 Nov 2022 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.20.0&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;PLEASE READ&lt;/strong&gt; these changes, and verify your config settings to ensure your application behaves how you intend it to. This release changes some default behaviors in the go agent.&lt;/p&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The Module Dependency Metrics feature was added. This collects the list of modules imported into your application, to aid in management of your application dependencies, enabling easier vulnerability detection and response, etc.
&lt;ul&gt;
&lt;li&gt;This feature is enabled by default, but may be disabled by explicitly including &lt;code&gt;ConfigModuleDependencyMetricsEnable(false)&lt;/code&gt; in your application, or setting the equivalent environment variable or &lt;code&gt;Config&lt;/code&gt; field direclty.&lt;/li&gt;
&lt;li&gt;Modules may be explicitly excluded from the report via the &lt;code&gt;ConfigModuleDependencyMetricsIgnoredPrefixes&lt;/code&gt; option.&lt;/li&gt;
&lt;li&gt;Excluded module names may be redacted via the &lt;code&gt;ConfigModuleDependencyMetricsRedactIgnoredPrefixes&lt;/code&gt; option. This is enabled by default.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Application Log Forwarding will now be &lt;strong&gt;ENABLED&lt;/strong&gt; by default
&lt;ul&gt;
&lt;li&gt;Automatic application log forwarding is now enabled by default. This means that logging frameworks wrapped with one of the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-compatibility-requirements/&quot;&gt;logcontext-v2 integrations&lt;/a&gt; will automatically send enriched application logs to New Relic with this version of the agent. To learn more about this feature, see the &lt;a href=&quot;https://docs.newrelic.com/docs/logs/logs-context/logs-in-context/&quot;&gt;APM logs in context documentation&lt;/a&gt;. For additional configuration options, see the &lt;a href=&quot;https://docs.newrelic.com/docs/logs/logs-context/configure-logs-context-go&quot;&gt;Go logs in context documentation&lt;/a&gt;. To learn about how to toggle log ingestion on or off by account, see our documentation to &lt;a href=&quot;https://docs.newrelic.com/docs/logs/logs-context/disable-automatic-logging&quot;&gt;disable automatic&lt;/a&gt; logging via the UI or API.&lt;/li&gt;
&lt;li&gt;If you are using a logcontext-v2 extension, but don&apos;t want the agent to automatically forward logs, please configure &lt;code&gt;ConfigAppLogForwardingEnabled(false)&lt;/code&gt; in your application.&lt;/li&gt;
&lt;li&gt;Environment variables have been added for all application logging config options:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;NEW_RELIC_APPLICATION_LOGGING_ENABLED&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NEW_RELIC_APPLICATION_LOGGING_FORWARDING_ENABLED&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NEW_RELIC_APPLICATION_LOGGING_FORWARDING_MAX_SAMPLES_STORED&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NEW_RELIC_APPLICATION_LOGGING_METRICS_ENABLED&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NEW_RELIC_APPLICATION_LOGGING_LOCAL_DECORATING_ENABLED&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Custom Event Limit Increase
&lt;ul&gt;
&lt;li&gt;This version increases the &lt;strong&gt;DEFAULT&lt;/strong&gt; limit of custom events from 10,000 events per minute to 30,000 events per minute. In the scenario that custom events were being limited, this change will allow more custom events to be sent to New Relic. There is also a new configurable &lt;strong&gt;MAXIMUM&lt;/strong&gt; limit of 100,000 events per minute. To change the limits, set &lt;code&gt;ConfigCustomInsightsEventsMaxSamplesStored(limit)&lt;/code&gt; to the limit you want in your application. To learn more about the change and how to determine if custom events are being dropped, see our Explorers Hub &lt;a href=&quot;https://support.newrelic.com/s/hubtopic/aAX8W0000008dby/send-more-custom-events-with-the-latest-apm-agents&quot;&gt;post&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;New config option &lt;code&gt;ConfigCustomInsightsEventsEnabled(false)&lt;/code&gt; can be used to disable the collection of custom events in your application.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Changed the following names to be consistent with their usage and other related identifier names. The old names remain for backward compatibility, but new code should use the new names.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ConfigCodeLevelMetricsIgnoredPrefix&lt;/code&gt; -&gt; &lt;code&gt;ConfigCodeLevelMetricsIgnoredPrefixes&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ConfigCodeLevelMetricsPathPrefix&lt;/code&gt; -&gt; &lt;code&gt;ConfigCodeLevelMetricsPathPrefixes&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NEW_RELIC_CODE_LEVEL_METRICS_PATH_PREFIX&lt;/code&gt; -&gt; &lt;code&gt;NEW_RELIC_CODE_LEVEL_METRICS_PATH_PREFIXES&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NEW_RELIC_CODE_LEVEL_METRICS_IGNORED_PREFIX&lt;/code&gt; -&gt; &lt;code&gt;NEW_RELIC_CODE_LEVEL_METRICS_IGNORED_PREFIXES&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;When excluding information reported from CodeLevelMetrics via the &lt;code&gt;IgnoredPrefixes&lt;/code&gt; or &lt;code&gt;PathPrefixes&lt;/code&gt; configuration fields (e.g., by specifying &lt;code&gt;ConfigCodeLevelMetricsIgnoredPrefixes&lt;/code&gt; or &lt;code&gt;ConfigCodeLevelMetricsPathPrefixes&lt;/code&gt;), the names of the ignored prefixes and the configured path prefixes may now be redacted from the agent configuration information sent to New Relic.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;This redaction is enabled by default, but may be disabled by supplying a &lt;code&gt;false&lt;/code&gt; value to &lt;code&gt;ConfigCodeLevelMetricsRedactPathPrefixes&lt;/code&gt; or &lt;code&gt;ConfigCodeLevelMetricsRedactIgnoredPrefixes&lt;/code&gt;, or by setting the corresponding &lt;code&gt;Config&lt;/code&gt; fields or environment variables to &lt;code&gt;false&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/issues/583&quot;&gt;#583&lt;/a&gt;: fixed a bug in zerologWriter where comma separated fields in log message confused the JSON parser and could cause panics.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;We also recommend using the latest version of the Go language. At minimum, you should at least be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go Agent EOL Policy&lt;/a&gt; for details about supported versions of the Go Agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 02 Nov 2022 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.20.3]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMC4z</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-20-3</link><pubDate>Thu, 19 Jan 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.20.3&lt;/h2&gt;
&lt;div&gt;&lt;p&gt;Please note that the v2 go agent is no longer supported according to our EOL policy.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Performance Improvements for compression&lt;/li&gt;
&lt;li&gt;nrsnowflake updated to golang 1.17 versions of packages&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;We also using the latest version of the Go language. At minimum, you should at least be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go Agent EOL Policy&lt;/a&gt; for details about supported versions of the Go Agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 19 Jan 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.21.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-21-0</link><pubDate>Thu, 30 Mar 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.21.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New errors inbox features:
&lt;ul&gt;
&lt;li&gt;User tracking: You can now see the number of users impacted by an error group. Identify the end user with the setUser method.&lt;/li&gt;
&lt;li&gt;Error fingerprint: Are your error occurrences grouped poorly? Set your own error fingerprint via a callback function.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Ability to disable reporting parameterized query in nrpgx-5&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Improved test coverage for gRPC integration, nrgrpc&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 30 Mar 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.21.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMS4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-21-1</link><pubDate>Thu, 27 Apr 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.21.1&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;nrredis-v9: automatic instrumentation for Go redis v9&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Agent now requires Go version 1.18 or higher.&lt;/li&gt;
&lt;li&gt;Removed support for Go version 1.17. This version of Go is outside of the support window.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 27 Apr 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.20.4]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMC40</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-20-4</link><pubDate>Thu, 09 Mar 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.20.4&lt;/h2&gt;
&lt;div&gt;&lt;p&gt;Please note that the v2 Go agent is no longer supported according to our EOL policy.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;nrmssql driver updated to use version maintained by Microsoft&lt;/li&gt;
&lt;li&gt;Bug where error messages were not truncated to the maximum size, and would get dropped if they were too large&lt;/li&gt;
&lt;li&gt;Bug #643 where number of span events was hard coded to 1000, and config setting was being ignored&lt;/li&gt;
&lt;li&gt;Unencrypted hash vulnerability in v1.15.0 of github.com/aws/aws-sdk-go patched by bumping to v1.33.0&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Improved performance of ignore error code checks in agent&lt;/li&gt;
&lt;li&gt;HTTP error codes can be set as expected by adding them to ErrorCollector.ExpectStatusCodes in the config&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support Statement&lt;/h3&gt;
&lt;p&gt;We also using the latest version of the Go language. At minimum, you should at least be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go Agent EOL Policy&lt;/a&gt; for details about supported versions of the Go Agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 09 Mar 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.22.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-22-0</link><pubDate>Thu, 01 Jun 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.22.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Apache Kafka integration nrsarama that instruments the Sarama library &lt;a href=&quot;https://github.com/Shopify/sarama&quot;&gt;https://github.com/Shopify/sarama&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;New logs in context integration logcontext-v2/nrzap that instruments the zap logging framework &lt;a href=&quot;https://github.com/uber-go/zap&quot;&gt;https://github.com/uber-go/zap&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Integration tests created for the nrlogrus and nrzapintegrations&lt;/li&gt;
&lt;li&gt;Updated integration tests for nrlogxi&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Security Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bumped sys package to v0.1.0 in the nrmssql integration&lt;/li&gt;
&lt;li&gt;Bumped net package to v0.7.0 in the nrgrpc, nrmssql , and nrnats integrations&lt;/li&gt;
&lt;li&gt;Bumped aws-sdk-go package to v1.34.0 in the nrawssdk-v1 integration&lt;/li&gt;
&lt;li&gt;Bumped text  package to v0.3.8 in the nrnats,  and nrpgx integrations&lt;/li&gt;
&lt;li&gt;Bumped gin package to v1.9.0 in the nrgin integration&lt;/li&gt;
&lt;li&gt;Bumped crypto package to v0.1.0 in the nrpgx  integration&lt;/li&gt;
&lt;li&gt;Fixed integration tests in nrnats package not correctly showing code coverage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 01 Jun 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.22.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMi4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-22-1</link><pubDate>Fri, 02 Jun 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.22.1&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Corrects an error in the release process for 3.22.1.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Fri, 02 Jun 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.23.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMy4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-23-0</link><pubDate>Tue, 20 Jun 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.23.0&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Adds the &lt;code&gt;nrsecurityagent&lt;/code&gt; integration for performing Interactive Application Security Testing (IAST) of your application.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To learn how to use IAST, &lt;a href=&quot;https://docs.newrelic.com/docs/iast/introduction/&quot;&gt;check out our documentation&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of Go. You should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 20 Jun 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.23.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yMy4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-23-1</link><pubDate>Wed, 28 Jun 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.23.1&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added newrelic.ConfigDatastoreRawQuery(true) configuration option to allow raw SQL queries to appear in new relic dashboards&lt;/li&gt;
&lt;li&gt;Added enriched serverless debug logging for faster debugging&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Removed timeouts on two tests in trace_observer_test.go&lt;/li&gt;
&lt;li&gt;Bumped nrnats test to go1.19&lt;/li&gt;
&lt;li&gt;Bumped graphql-go to v1.3.0 in the nrgraphgophers integration&lt;/li&gt;
&lt;li&gt;Added license file to nrsecurityagent integration&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves (i.e., Go versions 1.19 and later are supported).&lt;/p&gt;
&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If you can&apos;t upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date. (&lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 28 Jun 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.24.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yNC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-24-0</link><pubDate>Mon, 31 Jul 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.24.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Turned Code Level Metrics on by default&lt;/li&gt;
&lt;li&gt;Added new test case to check if the nrsecurityagent is enabled in the gRPC integration&lt;/li&gt;
&lt;li&gt;Added new test case for InfoInterceptorStatusHandler function in the gRPC integration&lt;/li&gt;
&lt;li&gt;Added Name() method for Transaction values to get the current transaction name.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bumped gin from 1.9.0 to 1.9.1&lt;/li&gt;
&lt;li&gt;Bumped gosnowflake from 1.6.16 to 1.6.19&lt;/li&gt;
&lt;li&gt;Bumped nrsecurityagent to 1.1.0 with improved reporting of gRPC protocol versions.&lt;/li&gt;
&lt;li&gt;Fixed a bug where expected errors weren&apos;t being properly marked as expected on new relic dashboards&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If you can&apos;t upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date. (&lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Mon, 31 Jul 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.24.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yNC4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-24-1</link><pubDate>Thu, 10 Aug 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.24.1&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Performance improvement around calls to the security agent. In some cases, unnecessary setup operations were being performed even if there was no security agent present to use that. These are now conditional on the security agent being present in the application (note that this will enable the setup code if the security agent is &lt;em&gt;present&lt;/em&gt; in the application, regardless of whether it’s currently enabled to run). This affects:
&lt;ul&gt;
&lt;li&gt;Base agent code (updated to v3.24.1)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrmongo&lt;/code&gt; integration (updated to v1.1.1)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fixed unit tests for integrations that were failing because code-level metrics are enabled by default now:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;nrawssdk-v1&lt;/code&gt; (updated to v1.1.2)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrawssdk-v2&lt;/code&gt; (updated to v1.2.2)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrecho-v3&lt;/code&gt; (updated to v1.0.2)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrecho-v4&lt;/code&gt; (updated to v1.0.4)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrhttprouter&lt;/code&gt; (updated to v1.3.0)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrlambda&lt;/code&gt; (updated to v1.2.2)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrnats&lt;/code&gt; (updated to v1.1.5)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrredis-v8&lt;/code&gt; (updated to v1.0.1)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated all integration &lt;code&gt;go.mod&lt;/code&gt; files to reflect supported Go language versions.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At a minimum, you should be using no version of Go older than what is supported by the Go team themselves (i.e., Go versions 1.19 and later are supported).
We recommend updating to the latest agent version as soon as it’s available. If you can’t upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date. (&lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&lt;/a&gt;)
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 10 Aug 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.25.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yNS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-25-0</link><pubDate>Mon, 18 Sep 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;This release was retracted. Use &lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-25-1/&quot;&gt;3.25.1&lt;/a&gt; instead.&lt;/p&gt;&lt;/div&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At a minimum, you should be using no version of Go older than what is supported by the Go team themselves (for exmample, Go versions 1.19 and later are supported).&lt;/p&gt;
&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If you can&apos;t update to the latest version, update your agents to a version no more than 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping agents up to date&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Mon, 18 Sep 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.27.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yNy4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-27-0</link><pubDate>Thu, 19 Oct 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.27.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added Support for getting Container ID&apos;s from cgroup v2 docker containers&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;A new instrumentation package for RabbitMQ with distributed tracing support: nramqp&lt;/p&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Unit tests repairs and improvements&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Removed deprecated V2 code from the repository. The support timeframe for this code has expired and is no longer recommended for use.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Bumped github.com/graphql-go/graphql from 0.7.9 to 0.8.1&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 19 Oct 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.25.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yNS4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-25-1</link><pubDate>Mon, 18 Sep 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.25.1&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added support for the &lt;code&gt;FastHTTP&lt;/code&gt; package:
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;newrelic.WrapHandleFuncFastHTTP()&lt;/code&gt; and &lt;code&gt;newrelic.StartExternalSegmentFastHTTP()&lt;/code&gt; functions to instrument &lt;code&gt;fasthttp&lt;/code&gt; context and create wrapped handlers. These functions work similarly to the existing ones for &lt;code&gt;net/http&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;client-fasthttp&lt;/code&gt; and &lt;code&gt;server-fasthttp&lt;/code&gt; examples to help get started with &lt;code&gt;FastHTTP&lt;/code&gt; integration.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Corrected a bug where the security agent failed to correctly parse the &lt;code&gt;NEW_RELIC_SECURITY_AGENT_ENABLED&lt;/code&gt; environment variable.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Mon, 18 Sep 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.26.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yNi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-26-0</link><pubDate>Thu, 28 Sep 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.26.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Extended implementation of the &lt;code&gt;nrpgx5&lt;/code&gt; integration (now v1.2.0). This instruments Postgres database operations using the &lt;code&gt;jackc/pgx/v5&lt;/code&gt; library, including the direct access mode of operation as opposed to requiring code to use the library compatible with the standard &lt;code&gt;database/sql&lt;/code&gt; library.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 28 Sep 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.28.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yOC4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-28-1</link><pubDate>Thu, 30 Nov 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.28.1&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added Supportability Metrics to nrfasthttp&lt;/li&gt;
&lt;li&gt;Always Link Transaction IDs to traces regardless of if Distributed Tracing is enabled or not&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where nil Request.Body could be set to non-nil request.Body with zero length when the security agent is enabled&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Security&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;More Secure URL Redaction&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 30 Nov 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.29.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yOS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-29-0</link><pubDate>Thu, 14 Dec 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization&apos;s practices prevent you from updating, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.29.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Security agent integration &lt;code&gt;nrsecurityagent&lt;/code&gt; now reports security configuraiton information along with the overall Go Agent configuration values. (Updates &lt;code&gt;nrsecurityagent&lt;/code&gt; to v1.2.0.)&lt;/li&gt;
&lt;li&gt;Code-Level Metrics collection efficiency enhancement allows user callback function for as-needed (and just-in-time) evaluation of custom code locations rather than up-front location overrides, via the &lt;code&gt;WithCodeLocationCallback&lt;/code&gt; CLM option. Deprecates &lt;code&gt;WithCodeLocation&lt;/code&gt; option (although the latter function is still supported for compatibility with existing code).&lt;/li&gt;
&lt;li&gt;Added extended synthetics support for new &lt;code&gt;X-Newrelic-Synthetics-Info&lt;/code&gt; HTTP headers.&lt;/li&gt;
&lt;li&gt;Documentation fixes.&lt;/li&gt;
&lt;li&gt;Removed deprecated &lt;code&gt;ROADMAP.md&lt;/code&gt; file.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what&apos;s supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 14 Dec 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.28.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yOC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-28-0</link><pubDate>Thu, 16 Nov 2023 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.28.0&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bumped gRPC from 1.54.0 -&gt; 1.56.3 in the following packages /v3/integrations/nrgrpc, /v3/, /v3/integrations/nrgrpc&lt;/li&gt;
&lt;li&gt;Bumped golang.org/x/net from 0.8.0 -&gt; 0.17.0 in package /v3/integrations/nrgraphqlgo&lt;/li&gt;
&lt;li&gt;Fixed issue where nrfasthttp would not properly register security agent headers&lt;/li&gt;
&lt;li&gt;Move fasthttp instrumentation into a new integration package, nrfasthttp&lt;/li&gt;
&lt;li&gt;Fixed issue where usage of io.ReadAll() was causing a memory leak&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.&lt;/p&gt;
&lt;p&gt;See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 16 Nov 2023 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.29.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yOS4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-29-1</link><pubDate>Thu, 25 Jan 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.29.1&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added Dockerized Unit Tests for Github Actions&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated version on security agent&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 25 Jan 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.30.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zMC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-30-0</link><pubDate>Thu, 15 Feb 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it becomes available. If your organization has established practices that prevent you from updating to the latest version, ensure that you regularly update your agents to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.30.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated the depencency on nrsecurityagent to 1.0.0.&lt;/li&gt;
&lt;li&gt;Added new integration, logcontext-v2/nrslog, which instruments logging via the new slog library.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Redacts license keys from error reporting.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what the Go team itself supports.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 15 Feb 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.31.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zMS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-31-0</link><pubDate>Wed, 27 Mar 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.31.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Integration packages to instrument AI model invocations (see below).
&lt;ul&gt;
&lt;li&gt;New package nrawsbedrock v1.0.0 introduced to instrument calls to &lt;div&gt;Amazon Bedrock&lt;/div&gt; Runtime Client API &lt;code&gt;InvokeModel&lt;/code&gt; and &lt;code&gt;InvokeModelWithResponseStream&lt;/code&gt; calls. Also provides a simple one-step method which invokes stream invocations and harvests the response stream data for you.&lt;/li&gt;
&lt;li&gt;New package nropenai v1.0.0 introduced to instrument calls to OpenAI using &lt;code&gt;NRCreateChatCompletion&lt;/code&gt;, &lt;code&gt;NRCreateChatCompletionStream&lt;/code&gt;, and &lt;code&gt;NRCreateEmbedding&lt;/code&gt; calls.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Dockerfile in the &lt;code&gt;examples/server&lt;/code&gt; sample app which facilitates the easy creation of a containerized ready-to-run sample app for situations where that makes testing easier.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;.Ignore&lt;/code&gt; was not ignoring transaction. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/845&quot;&gt;Issue #845&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Added nil error check in wrap function. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/862&quot;&gt;Issue #862&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WrapBackgroundCore&lt;/code&gt; background logger was not sending logs to New Relic. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/859&quot;&gt;Issue #859&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Corrected pgx5 integration example which caused a race condition. Thanks to @WillAbides! Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/855&quot;&gt;Issue #855&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Updated third-party library versions due to reported security or other supportability issues:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;github.com/jackc/pgx/v5&lt;/code&gt; to 5.5.4 in &lt;code&gt;nrpgx5&lt;/code&gt; integration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;google.gopang.org/protobuf&lt;/code&gt; to 1.33.0 in &lt;code&gt;nrmicro&lt;/code&gt; and &lt;code&gt;nrgrpc&lt;/code&gt; integrations&lt;/li&gt;
&lt;li&gt;&lt;code&gt;github.com/jackc/pgx/v4&lt;/code&gt; to 4.18.2 in &lt;code&gt;nrpgx&lt;/code&gt; integration&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;AI Monitoring Configuration&lt;/h3&gt;
&lt;p&gt;New configuration options are available specific to AI monitoring. These settings include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;AIMonitoring.Enabled&lt;/code&gt;, configured via &lt;code&gt;ConfigAIMonitoring.Enabled(&lt;/code&gt;&lt;em&gt;bool&lt;/em&gt;&lt;code&gt;)&lt;/code&gt; [default &lt;code&gt;false&lt;/code&gt;]&lt;/li&gt;
&lt;li&gt;&lt;code&gt;AIMonitoring.Streaming.Enabled&lt;/code&gt;, configured via &lt;code&gt;ConfigAIMonitoringStreamingEnabled(&lt;/code&gt;&lt;em&gt;bool&lt;/em&gt;&lt;code&gt;)&lt;/code&gt; [default &lt;code&gt;true&lt;/code&gt;]&lt;/li&gt;
&lt;li&gt;&lt;code&gt;AIMonitoring.Content.Enabled&lt;/code&gt;, configured via &lt;code&gt;ConfigAIMonitoringContentEnabled(&lt;/code&gt;&lt;em&gt;bool&lt;/em&gt;&lt;code&gt;)&lt;/code&gt; [default &lt;code&gt;true&lt;/code&gt;]&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;AI Monitoring Public API Methods&lt;/h3&gt;
&lt;p&gt;Two new AI monitoring related public API methods have been added, as methods of the &lt;code&gt;newrelic.Application&lt;/code&gt; value returned by &lt;code&gt;newrelic.NewApplication&lt;/code&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://pkg.go.dev/github.com/newrelic/go-agent/v3/newrelic#Application.RecordLLMFeedbackEvent&quot;&gt;app.RecordLLMFeedbackEvent&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://pkg.go.dev/github.com/newrelic/go-agent/v3/newrelic#Application.SetLLMTokenCountCallback&quot;&gt;app.SetLLMTokenCountCallback&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;AI Monitoring&lt;/h3&gt;
&lt;p&gt;New Relic AI monitoring is the industry’s first APM solution that provides end-to-end visibility for AI Large Language Model (LLM) applications. It enables end-to-end visibility into the key components of an AI LLM application. With AI monitoring, users can monitor, alert, and debug AI-powered applications for reliability, latency, performance, security and cost. AI monitoring also enables AI/LLM specific insights (metrics, events, logs and traces) which can easily integrate to build advanced guardrails for enterprise security, privacy and compliance.&lt;/p&gt;
&lt;p&gt;AI monitoring offers custom-built insights and tracing for the complete lifecycle of an LLM’s prompts and responses, from raw user input to repaired/polished responses. AI monitoring provides built-in integrations with popular LLMs and components of the AI development stack. This release provides instrumentation for &lt;a href=&quot;https://pkg.go.dev/github.com/newrelic/go-agent/v3/integrations/nropenai&quot;&gt;OpenAI&lt;/a&gt;
and &lt;a href=&quot;https://pkg.go.dev/github.com/newrelic/go-agent/v3/integrations/nrawsbedrock&quot;&gt;Bedrock&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When AI monitoring is enabled with &lt;code&gt;ConfigAIMonitoringEnabled(true)&lt;/code&gt;, the agent will now capture AI LLM related data. This data will be visible under a new APM tab called AI Responses. See our &lt;a href=&quot;https://docs.newrelic.com/docs/ai-monitoring/intro-to-ai-monitoring/&quot;&gt;AI Monitoring documentation&lt;/a&gt; for more details.&lt;/p&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 27 Mar 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.32.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zMi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-32-0</link><pubDate>Thu, 04 Apr 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.32.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updates to support for the New Relic security agent to report API endpoints
&lt;ul&gt;
&lt;li&gt;Adds new wrapper function for the &lt;code&gt;nrecho&lt;/code&gt;, &lt;code&gt;nrgin&lt;/code&gt;, and &lt;code&gt;nrgorilla&lt;/code&gt; integrations&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Handler to take New Relic transaction data from context automatically when using &lt;code&gt;nrslog&lt;/code&gt; integration (thanks, @adomaskizogian!)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Adds missing license file to the &lt;code&gt;nropenai&lt;/code&gt; integration&lt;/li&gt;
&lt;li&gt;Changes &lt;code&gt;*bedrockruntime.Client&lt;/code&gt; parameters in &lt;code&gt;nrawsbedrock&lt;/code&gt; integration to use a more general interface type, allowing the use of custom types which extend the bedrock client type&lt;/li&gt;
&lt;li&gt;Fixes &lt;code&gt;pgx5&lt;/code&gt; pool example&lt;/li&gt;
&lt;li&gt;Updated unit tests to check &lt;code&gt;Transaction.Ignore&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Updated &lt;code&gt;nrzap&lt;/code&gt; unit tests to add background logger sugared test case.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 04 Apr 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.33.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zMy4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-33-0</link><pubDate>Wed, 01 May 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.33.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Support for Zap Field Attributes&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where running containers on AWS would falsely flag Azure Utilization&lt;/li&gt;
&lt;li&gt;Fixed a typo with nrecho&lt;/li&gt;
&lt;li&gt;Changed nrslog example to use a context-driven handler&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At a minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 01 May 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.34.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zNC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-34-0</link><pubDate>Thu, 01 Aug 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.34.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;logcontext-v2/nrlogrus&lt;/code&gt; can now collect user attributes&lt;/li&gt;
&lt;li&gt;&lt;code&gt;logcontext-v2/nrslog&lt;/code&gt; can now collect user attributes&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;slog&lt;/code&gt; to manage Go agent logs with the new &lt;code&gt;nrslog&lt;/code&gt; library&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;zerolog&lt;/code&gt; go manage Go agent logs with the new &lt;code&gt;nrzerolog&lt;/code&gt; library&lt;/li&gt;
&lt;li&gt;Support for &lt;code&gt;RegisterTLSConfig&lt;/code&gt; in &lt;code&gt;nrmysql&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;logcontext-v2/nrlogrus&lt;/code&gt; will still print user logs without issues if the Go agent has already been shut down&lt;/li&gt;
&lt;li&gt;Switched &lt;code&gt;protobuff&lt;/code&gt; to &lt;code&gt;google.golang.org/protobuff&lt;/code&gt; in &lt;code&gt;modfile&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At a minimum, you should use no version of Go older than what&apos;s supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 01 Aug 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.33.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zMy4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-33-1</link><pubDate>Tue, 02 Jul 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.33.1&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Increased max span events default limit to 2,000 to align with agent specifications.&lt;/li&gt;
&lt;li&gt;Updated support for latest New Relic security agent release.&lt;/li&gt;
&lt;li&gt;Added support for gRPC API endpoints and HTTP status codes in the nrsecurity integration.&lt;/li&gt;
&lt;li&gt;Added feature to detect route of an incoming request for all supported frameworks in the nrsecurity integration.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue with nrzap attributes not properly being forwarded.&lt;/li&gt;
&lt;li&gt;Improved comments on nropenai.&lt;/li&gt;
&lt;li&gt;Fixed a minor bug relating to &lt;code&gt;ExpectStatusCodes&lt;/code&gt; in &lt;code&gt;app_run.go&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At a minimum, you should use no version of Go older than what&apos;s supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 02 Jul 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.35.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zNS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-35-0</link><pubDate>Thu, 10 Oct 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.35.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Enhanced security features (adds support for secure cookie even reporting)
&lt;ul&gt;
&lt;li&gt;Enables sharing of response headers with the csec-security-agent.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Now uses &lt;code&gt;error.Error()&lt;/code&gt; value for log attributes
&lt;ul&gt;
&lt;li&gt;Thanks to @ejsolberg for the &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/947&quot;&gt;PR&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;nramqp integration cloud services entity relationship changes
&lt;ul&gt;
&lt;li&gt;Enhances url support for amqp server connections&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;nrawssdk-v2 integration examples of &lt;code&gt;AppendMiddlewares&lt;/code&gt; corrected.
&lt;ul&gt;
&lt;li&gt;Thanks to @Meroje for the &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/599&quot;&gt;PR&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Zerolog integration correction to example program &lt;code&gt;import&lt;/code&gt; statement.
&lt;ul&gt;
&lt;li&gt;Fixes issue &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/950&quot;&gt;#950&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Zerolog integration JSON parser bug caused a runtime panic in some circumstances.
&lt;ul&gt;
&lt;li&gt;Fixes issue &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/955&quot;&gt;#955&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fixed handling of &lt;code&gt;panic(nil)&lt;/code&gt;. This was made necessary by changes introducted to Go as of 1.21.&lt;/li&gt;
&lt;li&gt;A race condition was possible due to code level metrics accesses to a contended memory address.
&lt;ul&gt;
&lt;li&gt;Fixes issue &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/949&quot;&gt;#949&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixes issue &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/957&quot;&gt;#957&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Integer size issues flagged when converting unsigned to signed values.&lt;/li&gt;
&lt;li&gt;Workflow corrections for CI processes in github.
&lt;ul&gt;
&lt;li&gt;Fixes issue &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/946&quot;&gt;#946&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Updated to use latest grpc and protobuf versions.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 10 Oct 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.35.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zNS4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-35-1</link><pubDate>Thu, 24 Oct 2024 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.35.1&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Security agent bug hotfix: Don&apos;t update the security agent until the Go agent has completed its connect process &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/978&quot;&gt;PR&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Faster Trace ID generation
&lt;ul&gt;
&lt;li&gt;Community member &lt;a href=&quot;https://github.com/ankon&quot;&gt;@ankon&lt;/a&gt; contributed &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/977&quot;&gt;this change&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 24 Oct 2024 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.37.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zNy4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-37-0</link><pubDate>Wed, 26 Feb 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.37.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Implemented a new approach to integrating New Relic with SLOG that is more lightweight, out of the way, and collects richer data. These changes have been constructed to be completely backwards-compatible with v1 of nrslog. Changes include:
&lt;ul&gt;
&lt;li&gt;Wrapping slog.Handler objects with errors to allow users to handle invalid use cases&lt;/li&gt;
&lt;li&gt;A complete rework of log enrichment so that New Relic linking metadata does not invalidate JSON, BSON, or YAML scanners. This new approach will instead inject the linking metadata as a key-value pair.&lt;/li&gt;
&lt;li&gt;Complete support for With(), WithGroup(), and attributes for automatic instrumentation.&lt;/li&gt;
&lt;li&gt;Performance operations.&lt;/li&gt;
&lt;li&gt;Robust testing (close to 90% coverage).&lt;/li&gt;
&lt;li&gt;&lt;em&gt;This updates logcontext-v2/nrslog to v1.4.0.&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Now custom application tags (labels) may be added to all forwarded log events.
&lt;ul&gt;
&lt;li&gt;Enabled if ConfigAppLogForwardingLabelsEnabled(true) or NEW_RELIC_APPLICATION_LOGGING_FORWARDING_LABELS_ENABLED=TRUE&lt;/li&gt;
&lt;li&gt;May exclude labels named in ConfigAppLogForwardingLabelsExclude(&quot;label1&quot;,&quot;label2&quot;,...) or NEW_RELIC_APPLICATION_LOGGING_FORWARDING_LABELS_EXCLUDE=&quot;label1,label2,...&quot;&lt;/li&gt;
&lt;li&gt;Labels are defined via ConfigLabels(...) or NEW_RELIC_LABELS&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added memory allocation limit detection/response mechanism to facilitate calling custom functions to perform application-specific resource management functionality, report custom metrics or events, or take other appropriate actions, in response to rising heap memory size.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 26 Feb 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.36.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zNi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-36-0</link><pubDate>Thu, 16 Jan 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.36.0&lt;/h2&gt;
&lt;h3&gt;Enhanced&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Internal improvements to securityagent integration to better support trace handling and other support for security analysis of applications under test, now v1.3.4; affects the following other integrations:
&lt;ul&gt;
&lt;li&gt;nrecho, now v1.1.4&lt;/li&gt;
&lt;li&gt;nrecho-v4, now v1.1.3&lt;/li&gt;
&lt;li&gt;nrgin, now v1.3.3&lt;/li&gt;
&lt;li&gt;nrgorilla, now v1.2.3&lt;/li&gt;
&lt;li&gt;nrgraphqlgo, now v1.0.2&lt;/li&gt;
&lt;li&gt;nrhttprouter, now v1.1.3&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added missing license files.&lt;/li&gt;
&lt;li&gt;Fixed module dependencies in nrgrpc integration, now v1.4.5&lt;/li&gt;
&lt;li&gt;Corrects handling of &lt;code&gt;panic(nil)&lt;/code&gt; to no longer try to keep pre-Go-1.21 behavior but to allow newer language semantics for that condition. Fixes &lt;a href=&quot;https://github.com/newrelic/go-agent/issues/975&quot;&gt;issue 975&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 16 Jan 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.38.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zOC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-38-0</link><pubDate>Thu, 20 Mar 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.38.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added new integration nrgochi v1.0.0 for support for go-chi library&lt;/li&gt;
&lt;li&gt;Added IsEnded() method for the Transaction type. Allowing for a straightforward approach to checking if a transaction has ended
&lt;ul&gt;
&lt;li&gt;Community Member @frknikiz contributed to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added caveat to API docs about local log decoration in zap integration&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 20 Mar 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.39.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zOS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-39-0</link><pubDate>Thu, 08 May 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.39.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added nrfiber integration for go fiber framework
&lt;ul&gt;
&lt;li&gt;Thank you to community member @MitulShah1 for contributing to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Updated nrslog example with new API
&lt;ul&gt;
&lt;li&gt;Thank you to community member @frankywahl for contributing to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add Optional Path Filtering Function to nrgin Middleware
&lt;ul&gt;
&lt;li&gt;Thank you to community member @frknikiz for contributing to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added ConfigDatastoreKeysEnabled to nrreddis integration allowing for reporting the names of keys along with the datastore operations&lt;/li&gt;
&lt;li&gt;Switched GitHub Action Testing Suite from an Emulated ARM layer to Native ARM layers&lt;/li&gt;
&lt;li&gt;Added support for time objects for attribute values for nrslog&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed linking metadata location in log messages&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 08 May 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.40.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40MC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-40-0</link><pubDate>Wed, 16 Jul 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.40.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;txn.IgnoreApdex()&lt;/code&gt; function to ignore Apdex score for a given transaction&lt;/li&gt;
&lt;li&gt;Added Custom Attributes via environment variables &lt;code&gt;NEW_RELIC_APPLICATION_LOGGING_FORWARDING_CUSTOM_ATTRIBUTES&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;nrconnect&lt;/code&gt; integration for connect library. Connect is a slim library for building browser and gRPC-compatible HTTP APIs
&lt;ul&gt;
&lt;li&gt;Thank you to community member @castaneai for contributing to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;nrmongo-v2&lt;/code&gt; integration supporting the mongodb-v2 library&lt;/li&gt;
&lt;li&gt;Overhauled GitHub Actions Test Suite
&lt;ul&gt;
&lt;li&gt;Added dockerized database support for mongodb and pgx5 integrations&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Enhanced query parameter representation in nrpgx5 integration&lt;/li&gt;
&lt;li&gt;Fixed a bug where a race condition would occur in identifying container utilization.&lt;/li&gt;
&lt;li&gt;Capture DynamoDB table name and index name in DatastoreSegment
&lt;ul&gt;
&lt;li&gt;Thank you to community member @rittneje for contributing to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Updated third-party library versions due to reported security or other supportability issues:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;github.com/gofiber/fiber/v2&lt;/code&gt; to 2.52.7 in &lt;code&gt;nrfiber&lt;/code&gt; integration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;github.com/go-chi/chi/v5&lt;/code&gt; to 5.2.2 in &lt;code&gt;nrgochi&lt;/code&gt; integration&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 16 Jul 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.40.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40MC4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-40-1</link><pubDate>Fri, 18 Jul 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.40.1&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Reverted utilization.go back to v3.39.0 release due to deadlock bug&lt;/li&gt;
&lt;li&gt;Removed awssupport_test.go tests that added direct dependencies to go module&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Fri, 18 Jul 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.41.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40MS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-41-0</link><pubDate>Wed, 24 Sep 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.41.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;DistributedTracer.Sampler&lt;/code&gt; config options for controlling the sampling behavior for Inbound Requests for distributed traces
&lt;ul&gt;
&lt;li&gt;To configure the sampler, added &lt;code&gt;ConfigRemoteParentSampled(flag RemoteParentSamplingConfig)&lt;/code&gt; and &lt;code&gt;ConfigRemoteParentNotSampled(flag RemoteParentSamplingConfig)&lt;/code&gt; which handles sampling behavior based on what the remote parent has flagged&lt;/li&gt;
&lt;li&gt;Flags added are &lt;code&gt;&quot;always_on&quot;, &quot;always_off&quot;, and &quot;default&quot;&lt;/code&gt; which can be called using &lt;code&gt;RemoteParentSamplingConfig&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Example: newrelic.ConfigRemoteParentSampled(newrelic.AlwaysOff)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added OOM Monitoring Tests&lt;/li&gt;
&lt;li&gt;Increased Secure Agent Test Coverage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated third-party library versions due to reported security or other supportability issues:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;github.com/gofiber/fiber/v2&lt;/code&gt; from 2.52.7 to 2.52.9 in &lt;code&gt;nrfiber&lt;/code&gt; integration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;golang.org/x/net&lt;/code&gt; from 0.25.0 to 0.38.0 in &lt;code&gt;nrconnect&lt;/code&gt; integration&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 24 Sep 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.43.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40My4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-43-0</link><pubDate>Thu, 02 Apr 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.43.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added UnWrap support for replacement response writer
&lt;ul&gt;
&lt;li&gt;Thank you to community member @ArturFortunato for contributing to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added support for Lambda function URL request and response in the &lt;code&gt;nrlambda&lt;/code&gt; integration
&lt;ul&gt;
&lt;li&gt;Thank you to community member @rittneje for contributing to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Added additional Span attribute for Opensearch/elastic search endpoint in the &lt;code&gt;nrawssdk&lt;/code&gt; integration&lt;/li&gt;
&lt;li&gt;Added Support for &quot;WITH&quot; clauses to sqlparse&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed failing httptest&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Security&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated CI/CD go version&lt;/li&gt;
&lt;li&gt;Bumped &lt;code&gt;nrgrpc&lt;/code&gt; version&lt;/li&gt;
&lt;li&gt;Dependabot security bumps
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;logcontext/nrlogrus&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;logcontext/nrlogrusplugin&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;logcontext-v2/nrlogrus&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrfiber&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 02 Apr 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.42.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40Mi4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-42-0</link><pubDate>Wed, 19 Nov 2025 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.42.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;ConfigTransactionEventsMaxSamplesStored&lt;/code&gt;and &lt;code&gt;ConfigErrorCollectorMaxSamplesStored&lt;/code&gt; allowing full control of maximum samples stored for Transaction Events, Custom Insights Events, Error Events, and Log Events&lt;/li&gt;
&lt;li&gt;Added support for the &lt;code&gt;MultiValueHeaders&lt;/code&gt; property when extracting the headers from &lt;code&gt;events.APIGatewayProxyResponse&lt;/code&gt; in nrlambda
&lt;ul&gt;
&lt;li&gt;Thank you to community member @rittneje for contributing to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Removed unused variables and modernize by replacing interface with any in the &lt;code&gt;nrpxg5&lt;/code&gt; integration&lt;/li&gt;
&lt;li&gt;Fixed a bug where error events did not correctly mark expected errors
&lt;ul&gt;
&lt;li&gt;Thank you to community member @driimus for contributing to this solution&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bumped &lt;code&gt;nrwriter&lt;/code&gt; integration to use v1.0.2
&lt;ul&gt;
&lt;li&gt;Thank you to community member @hiicharm for spotting this.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 19 Nov 2025 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.43.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40My4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-43-1</link><pubDate>Thu, 09 Apr 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.43.1&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug where we were importing the incorrect version of the &lt;code&gt;nrsecureagent&lt;/code&gt; in our &lt;code&gt;nrgrpc&lt;/code&gt; integration&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 09 Apr 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.43.2]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40My4y</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-43-2</link><pubDate>Thu, 16 Apr 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.43.2&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug in &lt;code&gt;replacementResponseWriter&lt;/code&gt; where the &lt;code&gt;Unwrap&lt;/code&gt; function wasn&apos;t being promoted as a part of an anoynmous struct&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 16 Apr 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.44.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40NC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-44-0</link><pubDate>Thu, 11 Jun 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.44.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;p&gt;  &lt;em&gt; Added Support for Anthropic SDK &lt;code&gt;nranthropic&lt;/code&gt;
  &lt;/em&gt; Added Support for GocqlX &lt;code&gt;nrgocqlx&lt;/code&gt;&lt;/p&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;p&gt;  &lt;em&gt; Export Internal Test Types via &lt;code&gt;integrationsupport&lt;/code&gt; to unblock external test consumers
    &lt;/em&gt; Thank you to community member @nitinprajwal for contributing to this solution
  &lt;em&gt; Fixed a bug in sqlparse to support optional &lt;code&gt;INTO&lt;/code&gt; statements in sql integrations
  &lt;/em&gt; Fixed a bug in &lt;code&gt;nrnats&lt;/code&gt; that caused flaky testing&lt;/p&gt;
&lt;h3&gt;Security&lt;/h3&gt;
&lt;p&gt;  &lt;em&gt; Dependabot Security Bumps
    &lt;/em&gt; &lt;code&gt;nrfiber&lt;/code&gt;&lt;/p&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 11 Jun 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.43.3]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40My4z</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-43-3</link><pubDate>Tue, 28 Apr 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.43.3&lt;/h2&gt;
&lt;h3&gt;Feature&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;EXPERIMENTAL: Added a config option &lt;code&gt;ConfigAppLogDecoratingWithinMessage&lt;/code&gt; to allow Local Log Decorator to appear within a message field.  This can only be applied to the &lt;code&gt;logcontext-v2/nrlogrus&lt;/code&gt; integration. The &lt;code&gt;logcontext-v2/nrlogrus&lt;/code&gt; integration will be bumped to v1.1.4.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Security&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Dependabot security bumps
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;nrawsbedrock&lt;/code&gt; (integration will be bumped to v1.1.1)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrawssdk-v2&lt;/code&gt; (integration will be bumped to v1.2.7)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrpgx5&lt;/code&gt; (integration will be bumped to v1.3.4)`&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 28 Apr 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.44.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40NC4x</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-44-1</link><pubDate>Mon, 22 Jun 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.44.1&lt;/h2&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Corrected incorrect tag for previous release&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Security&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Dependabot security updates
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;nrgochi&lt;/code&gt; integration updated to v5.2.4&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrmongo&lt;/code&gt; integration updated to v1.17.7&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrmongo-v2&lt;/code&gt; integration updated to v2.4.2&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrnats&lt;/code&gt; integration updated to v2.11.15&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At a minimum, use a version of Go that the Go team still supports.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Mon, 22 Jun 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.44.2]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40NC4y</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-44-2</link><pubDate>Tue, 11 Aug 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.44.2&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;aws.lambda.eventSource.eventType&lt;/code&gt; attribute support for the &lt;code&gt;nrlambda&lt;/code&gt; integration&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;TransactionTrace&lt;/code&gt; fixes
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;backtrace&lt;/code&gt; shows properly in the UI -&gt; Fixed an issue where backtraces weren&apos;t properly displaying in NR1&lt;/li&gt;
&lt;li&gt;&lt;code&gt;timestamp&lt;/code&gt; no longer null -&gt; Fixed an issue where timestamp always showed as null&lt;/li&gt;
&lt;li&gt;&lt;code&gt;exclusive_duration_millis&lt;/code&gt; no longer null -&gt; Fixed an issue where &lt;code&gt;exclusive_duration_millis&lt;/code&gt; always showed as null&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Security&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Dependabot security updates
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;nrgrpc&lt;/code&gt; bump google.golang.org/grpc to 1.82.1&lt;/li&gt;
&lt;li&gt;&lt;code&gt;nrconnect&lt;/code&gt; bump golang.org/x/net to 0.55.0&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At a minimum, use a version of Go that the Go team still supports.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 11 Aug 2026 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.0.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4wLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-300</link><pubDate>Tue, 17 Dec 2019 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.0.0&lt;/h2&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;Please pay close attention to the list of Changes.&lt;/p&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;A full list of changes and a step by step checklist on how to upgrade can be found in the &lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/MIGRATION.md&quot;&gt;v3 Migration Guide&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Support for Go Modules. Our Go agent integration packages support frameworks and libraries which are changing over time. With support for Go Modules, we are now able to release instrumentation packages for multiple versions of frameworks and libraries with a single agent release; and support operation of the Go agent in Go Modules environments. This affects naming of our integration packages, as described in the v3 Migration Guide (see under &quot;Changes&quot; above).&lt;/li&gt;
&lt;li&gt;Detect and set hostnames based on Heroku dyno names. When deploying an application in Heroku, the hostnames collected will now match the dyno name. This serves to greatly improve the usability of the servers list in APM since dyno names are often sporadic or fleeting in nature. The feature is controlled by two new configuration options &lt;code&gt;Config.Heroku.UseDynoNames&lt;/code&gt; and &lt;code&gt;Config.Heroku.DynoNamePrefixesToShorten&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 17 Dec 2019 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.10.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xMC4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3100</link><pubDate>Mon, 11 Jan 2021 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.10.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;To keep up with the latest security protocols implemented by Amazon Web Services, the agent now uses &lt;a href=&quot;https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html&quot;&gt;AWS IMDSv2&lt;/a&gt; to find utilization data. &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/249&quot;&gt;#249&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Updated the locations of our license files so that Go docs &lt;a href=&quot;https://pkg.go.dev&quot;&gt;https://pkg.go.dev&lt;/a&gt; will display our agent. Thanks @tydavis for your PR to fix this! &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/254&quot;&gt;#254&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Added an Open Source repo linter GitHub action that runs on push. &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/262&quot;&gt;#262&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Updated the README.md file to correctly show the support resources from New Relic. &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/255&quot;&gt;#255&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly and at a minimum every 3 months. As of this release, the oldest supported version is &lt;a href=&quot;https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-22&quot;&gt;2.2.0&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 11 Jan 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.1.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-310</link><pubDate>Wed, 15 Jan 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Support for W3C Trace Context, with easy upgrade from New Relic trace context.&lt;/p&gt;
&lt;p&gt;Distributed Tracing now supports W3C Trace Context headers for HTTP and gRPC protocols when distributed tracing is enabled. Our implementation can accept and emit both W3C trace header format and New Relic trace header format. This simplifies agent upgrades, allowing trace context to be propagated between services with older and newer releases of New Relic agents. W3C trace header format will always be accepted and emitted. New Relic trace header format will be accepted, and you can optionally disable emission of the New Relic trace header format.&lt;/p&gt;
&lt;p&gt;When distributed tracing is enabled with &lt;code&gt;Config.DistributedTracer.Enabled = true&lt;/code&gt;, the Go agent will now accept W3C&apos;s &lt;code&gt;traceparent&lt;/code&gt; and &lt;code&gt;tracestate&lt;/code&gt; headers when calling &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#Transaction.AcceptDistributedTraceHeaders&quot;&gt;&lt;code&gt;Transaction.AcceptDistributedTraceHeaders&lt;/code&gt;&lt;/a&gt;. When calling &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#Transaction.InsertDistributedTraceHeaders&quot;&gt;&lt;code&gt;Transaction.InsertDistributedTraceHeaders&lt;/code&gt;&lt;/a&gt;, the Go agent will include the W3C headers along with the New Relic distributed tracing header, unless the New Relic trace header format is disabled using &lt;code&gt;Config.DistributedTracer.ExcludeNewRelicHeader = true&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Also, see Knowns Issues and Workarounds.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://github.com/elastic/go-elasticsearch&quot;&gt;elastic/go-elasticsearch&lt;/a&gt; in the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrelasticsearch-v7&quot;&gt;v3/integrations/nrelasticsearch-v7&lt;/a&gt; package.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues and Workarounds&lt;/h3&gt;
&lt;p&gt;If a .NET agent is initiating distributed traces as the root service, you must update that .NET agent to version 8.24 or later before upgrading your downstream Go New Relic agents to this agent release.&lt;/p&gt;</content:encoded><description>ReleasedOn: Wed, 15 Jan 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.11.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4xMS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3110</link><pubDate>Thu, 18 Mar 2021 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.11.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Aerospike is now included on the list of recognized datastore names. Thanks @vkartik97 for your PR! &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/233&quot;&gt;#233&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Added support for version 8 of go-redis. Thanks @ilmimris for adding this instrumentation! &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/251&quot;&gt;#251&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Changed logging level for messages resulting from Infinite Tracing load balancing operations. These were previously logged as errors, and now they are debugging messages. &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/276&quot;&gt;#276&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;When the agent is configured with &lt;code&gt;cfg.ErrorCollector.RecordPanics&lt;/code&gt; set to &lt;code&gt;true&lt;/code&gt;, panics would be recorded by New Relic, but stack traces would not be logged as the Go Runtime usually does. The agent now logs stack traces from within its panic handler, providing similar functionality. &lt;a href=&quot;https://github.com/newrelic/go-agent/pull/278&quot;&gt;#278&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Added license files to some integrations packages to ensure compatibility with &lt;code&gt;package.go.dev&lt;/code&gt;. Now the documentation for our integrations shows up again on go.docs.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;New Relic recommends that you upgrade the agent regularly to ensure that you&apos;re getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach &lt;a href=&quot;https://docs.newrelic.com/docs/using-new-relic/cross-product-functions/install-configure/notification-changes-new-relic-saas-features-distributed-software&quot;&gt;end-of-life&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 18 Mar 2021 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.4.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-340</link><pubDate>Mon, 23 Mar 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.4.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Attribute &lt;code&gt;http.statusCode&lt;/code&gt; 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 three ways:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#NewRoundTripper&quot;&gt;&lt;code&gt;NewRoundTripper&lt;/code&gt;&lt;/a&gt; with your http.Client&lt;/li&gt;
&lt;li&gt;Including the http.Response as a field on your &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#ExternalSegment&quot;&gt;&lt;code&gt;ExternalSegment&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Using the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#ExternalSegment.SetStatusCode&quot;&gt;&lt;code&gt;ExternalSegment.SetStatusCode&lt;/code&gt;&lt;/a&gt; API to set the status code directly&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;To exclude the &lt;code&gt;http.statusCode&lt;/code&gt; attribute from span events, update your agent configuration like so, where &lt;code&gt;cfg&lt;/code&gt; is your &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#Config&quot;&gt;&lt;code&gt;newrelic.Config&lt;/code&gt;&lt;/a&gt; object.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cfg.SpanEvents.Attributes.Exclude = append(cfg.SpanEvents.Attributes.Exclude, newrelic.SpanAttributeHTTPStatusCode)
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Error attributes &lt;code&gt;error.class&lt;/code&gt; and &lt;code&gt;error.message&lt;/code&gt; are now included on the span event in which the error was noticed, or on the root span if an error occurs in a transaction with no segments (no chid spans). Only the most recent error information is added to the attributes; prior errors on the same span are overwritten.&lt;/p&gt;
&lt;p&gt;To exclude the &lt;code&gt;error.class&lt;/code&gt; and/or &lt;code&gt;error.message&lt;/code&gt; attributes from span events, update your agent configuration like so, where &lt;code&gt;cfg&lt;/code&gt; is your &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#Config&quot;&gt;&lt;code&gt;newrelic.Config&lt;/code&gt;&lt;/a&gt; object.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cfg.SpanEvents.Attributes.Exclude = append(cfg.SpanEvents.Attributes.Exclude, newrelic.newrelic.SpanAttributeErrorClass, newrelic.SpanAttributeErrorMessage)
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Use &lt;a href=&quot;https://godoc.org/github.com/gin-gonic/gin#Context.FullPath&quot;&gt;&lt;code&gt;Context.FullPath()&lt;/code&gt;&lt;/a&gt; for transaction names when using Gin version 1.5.0 or greater. Gin transactions were formerly named after the &lt;a href=&quot;https://godoc.org/github.com/gin-gonic/gin#Context.HandlerName&quot;&gt;&lt;code&gt;Context.HandlerName()&lt;/code&gt;&lt;/a&gt;, which uses reflection. This change improves transaction naming and reduces overhead. Please note that because your transaction names will change, you may have to update any related dashboards and alerts to match the new name.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;// Transactions previously named
&quot;GET main.handleGetUsers&quot;
// will be change to something like this match the full path
&quot;GET /user/:id&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Mon, 23 Mar 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.2.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4yLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-320</link><pubDate>Mon, 27 Jan 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.2.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added support for &lt;code&gt;v7&lt;/code&gt; of &lt;a href=&quot;https://github.com/go-redis/redis&quot;&gt;go-redis/redis&lt;/a&gt; in the new &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrredis-v7&quot;&gt;v3/integrations/nrredis-v7&lt;/a&gt; package.
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrredis-v7&quot;&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/v3/integrations/nrredis-v7/example/main.go&quot;&gt;Example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Updated Gorilla instrumentation to include request time spent in middlewares. Added new &lt;code&gt;nrgorilla.Middleware&lt;/code&gt; and deprecated &lt;code&gt;nrgorilla.InstrumentRoutes&lt;/code&gt;. Register the new middleware as your first middleware using &lt;a href=&quot;https://godoc.org/github.com/gorilla/mux#Router.Use&quot;&gt;&lt;code&gt;Router.Use&lt;/code&gt;&lt;/a&gt;. See the &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrgorilla&quot;&gt;godocs examples&lt;/a&gt; for more details.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;r := mux.NewRouter()
// Always register the nrgorilla.Middleware first.
r.Use(nrgorilla.Middleware(app))

// All handlers and custom middlewares will be instrumented.  The
// transaction will be available in the Request&apos;s context.
r.Use(MyCustomMiddleware)
r.Handle(&quot;/&quot;, makeHandler(&quot;index&quot;))

// The NotFoundHandler and MethodNotAllowedHandler must be instrumented
// separately using newrelic.WrapHandle.  The second argument to
// newrelic.WrapHandle is used as the transaction name; the string returned
// from newrelic.WrapHandle should be ignored.
_, r.NotFoundHandler = newrelic.WrapHandle(app, &quot;NotFoundHandler&quot;, makeHandler(&quot;not found&quot;))
_, r.MethodNotAllowedHandler = newrelic.WrapHandle(app, &quot;MethodNotAllowedHandler&quot;, makeHandler(&quot;method not allowed&quot;))

http.ListenAndServe(&quot;:8000&quot;, r)
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues and Workarounds&lt;/h3&gt;
&lt;p&gt;If a .NET agent is initiating distributed traces as the root service, you must update that .NET agent to version 8.24 or later before upgrading your downstream Go New Relic agents to this agent release.&lt;/p&gt;</content:encoded><description>ReleasedOn: Mon, 27 Jan 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.5.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy41LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-350</link><pubDate>Wed, 20 May 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.5.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://docs.newrelic.com/docs/understand-dependencies/distributed-tracing/enable-configure/enable-distributed-tracing&quot;&gt;Infinite Tracing on New Relic Edge&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Infinite Tracing observes 100% of your distributed traces and provides visualizations for the most actionable data so you have the examples of errors and long-running traces so you can better diagnose and troubleshoot your systems.&lt;/p&gt;
&lt;p&gt;You &lt;a href=&quot;https://docs.newrelic.com/docs/agents/go-agent/configuration/go-agent-configuration#infinite-tracing&quot;&gt;configure your agent&lt;/a&gt; to send traces to a trace observer in New Relic Edge. You view your distributed traces through the New Relic’s UI. There is no need to install a collector on your network.&lt;/p&gt;
&lt;p&gt;Infinite Tracing is currently available on a sign-up basis. If you would like to participate, please contact your sales representative.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrgin#Middleware&quot;&gt;&lt;code&gt;nrgin.Middleware&lt;/code&gt;&lt;/a&gt; uses &lt;a href=&quot;https://godoc.org/github.com/gin-gonic/gin#Context.FullPath&quot;&gt;&lt;code&gt;Context.FullPath()&lt;/code&gt;&lt;/a&gt; for transaction names when using Gin version 1.5.0 or greater. Gin transactions were formerly named after the &lt;a href=&quot;https://godoc.org/github.com/gin-gonic/gin#Context.HandlerName&quot;&gt;&lt;code&gt;Context.HandlerName()&lt;/code&gt;&lt;/a&gt;, which uses reflection. This change improves transaction naming and reduces overhead. Please note that because your transaction names will change, you may have to update any related dashboards and alerts to match the new name. If you wish to continue using &lt;code&gt;Context.HandlerName()&lt;/code&gt; for your transaction names, use &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrgin#MiddlewareHandlerTxnNames&quot;&gt;&lt;code&gt;nrgin.MiddlewareHandlerTxnNames&lt;/code&gt;&lt;/a&gt; instead.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;// Transactions previously named
&quot;GET main.handleGetUsers&quot;
// will be change to something like this match the full path
&quot;GET /user/:id&quot;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Note: As part of agent release v3.4.0, a v2.0.0 tag was added to the nrgin package. When using go modules however, it was impossible to install this latest version of nrgin. The v2.0.0 tag has been removed and replaced with v1.1.0.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 20 May 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.6.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy42LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-360</link><pubDate>Tue, 09 Jun 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.6.0&lt;/h2&gt;
&lt;h2&gt;New Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#Segment.AddAttribute&quot;&gt;adding custom attributes directly to spans&lt;/a&gt;. These attributes will be visible when looking at spans in the distributed tracing UI.&lt;/p&gt;
&lt;p&gt;Example:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;txn := newrelic.FromContext(r.Context())
sgmt := txn.StartSegment(&quot;segment1&quot;)
defer sgmt.End()
sgmt.AddAttribute(&quot;mySpanString&quot;, &quot;hello&quot;)
sgmt.AddAttribute(&quot;mySpanInt&quot;, 123)
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Custom attributes added to the transaction with &lt;code&gt;txn.AddAttribute&lt;/code&gt; are now also added to the root span and will be visible when looking at the span in the distributed tracing UI. These custom attributes can be disabled from all destinations using &lt;code&gt;Config.Attributes.Exclude&lt;/code&gt; or disabled from spans specifically using &lt;code&gt;Config.SpanEvents.Attributes.Exclude&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Agent attributes added to the transaction are now also added to the root span event and will be visible when looking at the span in the distributed tracing UI. These attributes include the &lt;code&gt;request.uri&lt;/code&gt; and the &lt;code&gt;request.method&lt;/code&gt; along with all other attributes listed in the &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#pkg-constants&quot;&gt;attributes section of our godocs&lt;/a&gt;. These agent attributes can be disabled from all destinations using &lt;code&gt;Config.Attributes.Exclude&lt;/code&gt; or disabled from spans specifically using &lt;code&gt;Config.SpanEvents.Attributes.Exclude&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue where it was impossible to exclude the attributes &lt;code&gt;error.class&lt;/code&gt; and &lt;code&gt;error.message&lt;/code&gt; from the root span. This issue has now been fixed. These attributes can now be excluded from all spans using &lt;code&gt;Config.Attributes.Exclude&lt;/code&gt; or &lt;code&gt;Config.SpanEvents.Attributes.Exclude&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Fixed an issue that caused Go&apos;s data race warnings to trigger in certain situations when using the &lt;code&gt;newrelic.NewRoundTripper&lt;/code&gt;. There were no reports of actual data corruption, but now the warnings should be resolved. Thank you to @blixt for bringing this to our attention!&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Tue, 09 Jun 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.3.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy4zLjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-330</link><pubDate>Tue, 11 Feb 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.3.0&lt;/h2&gt;
&lt;h3&gt;New Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Added support for GraphQL in two new integrations:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/graph-gophers/graphql-go&quot;&gt;graph-gophers/graphql-go&lt;/a&gt; with &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrgraphgophers&quot;&gt;v3/integrations/nrgraphgophers&lt;/a&gt;.
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrgraphgophers&quot;&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/v3/integrations/nrgraphgophers/example/main.go&quot;&gt;Example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/graphql-go/graphql&quot;&gt;graphql-go/graphql&lt;/a&gt; with &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrgraphqlgo&quot;&gt;v3/integrations/nrgraphqlgo&lt;/a&gt;.
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrgraphqlgo&quot;&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/v3/integrations/nrgraphqlgo/example/main.go&quot;&gt;Example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Added database instrumentation support for &lt;a href=&quot;https://github.com/snowflakedb/gosnowflake&quot;&gt;snowflakedb/gosnowflake&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/integrations/nrsnowflake&quot;&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/go-agent/blob/master/v3/integrations/nrsnowflake/example/main.go&quot;&gt;Example&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;When using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#StartExternalSegment&quot;&gt;&lt;code&gt;newrelic.StartExternalSegment&lt;/code&gt;&lt;/a&gt; or &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#NewRoundTripper&quot;&gt;&lt;code&gt;newrelic.NewRoundTripper&lt;/code&gt;&lt;/a&gt;, if existing cross application tracing or distributed tracing headers are present on the request, they will be replaced instead of added.&lt;/li&gt;
&lt;li&gt;The &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#FromContext&quot;&gt;&lt;code&gt;FromContext&lt;/code&gt;&lt;/a&gt; API which allows you to pull a Transaction from a context.Context will no longer panic if the provided context is nil. In this case, a nil is returned.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Known Issues and Workarounds&lt;/h3&gt;
&lt;p&gt;If a .NET agent is initiating distributed traces as the root service, you must update that .NET agent to version 8.24 or later before upgrading your downstream Go New Relic agents to this agent release.&lt;/p&gt;</content:encoded><description>ReleasedOn: Tue, 11 Feb 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.7.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy43LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-370</link><pubDate>Thu, 18 Jun 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.7.0&lt;/h2&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;When &lt;code&gt;Config.Transport&lt;/code&gt; is nil, no longer use the &lt;code&gt;http.DefaultTransport&lt;/code&gt; when communicating with the New Relic backend. This addresses an issue with shared transports as described in &lt;a href=&quot;https://github.com/golang/go/issues/33006&quot;&gt;golang/go#33006&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;If a timeout occurs when attempting to send data to the New Relic backend, instead of dropping the data, we save it and attempt to send it with the next harvest. Note &lt;a href=&quot;https://docs.newrelic.com/docs/apm/new-relic-apm/maintenance/apm-data-retention&quot;&gt;data retention limits&lt;/a&gt; still apply and the agent will still start to drop data when these limits are reached. We attempt to keep the highest priority events and traces.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 18 Jun 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.8.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy44LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-380</link><pubDate>Wed, 01 Jul 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.8.0&lt;/h2&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;When marking a transaction as a web transaction using &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#Transaction.SetWebRequest&quot;&gt;Transaction.SetWebRequest&lt;/a&gt;, it is now possible to include a &lt;code&gt;Host&lt;/code&gt; field in the &lt;a href=&quot;https://godoc.org/github.com/newrelic/go-agent/v3/newrelic#WebRequest&quot;&gt;WebRequest&lt;/a&gt; struct, which defaults to the empty string.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;code&gt;Host&lt;/code&gt; header is now being correctly captured and recorded in the &lt;code&gt;request.headers.host&lt;/code&gt; attribute, as described &lt;a href=&quot;https://docs.newrelic.com/docs/agents/go-agent/instrumentation/go-agent-attributes#requestHeadersHost&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Previously, the timestamps on Spans and Transactions were being written using different data types, which sometimes caused rounding errors that could cause spans to be offset incorrectly in the UI. This has been fixed.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 01 Jul 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.8.1]]></title><guid isPermaLink="false">R28gYWdlbnQtMy44LjE=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-381</link><pubDate>Wed, 15 Jul 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.8.1&lt;/h2&gt;
&lt;h3&gt;Bug Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an issue that could cause orphaned Distributed Trace spans when using SQL instrumentation like &lt;code&gt;nrmysql&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Wed, 15 Jul 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.9.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy45LjA=</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-390</link><pubDate>Thu, 03 Sep 2020 00:00:00 +0000</pubDate><content:encoded>&lt;h2&gt;3.9.0&lt;/h2&gt;
&lt;h3&gt;Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;When sending Serverless telemetry using the &lt;code&gt;nrlambda&lt;/code&gt; integration, support an externally-managed named pipe.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The articles below provide additional instructions on support for an externally-managed named pipe in lambdas:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/serverless-function-monitoring/aws-lambda-monitoring/enable-lambda-monitoring/enable-serverless-monitoring-aws-lambda-legacy/&quot;&gt;Legacy manual instrumentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/serverless-function-monitoring/aws-lambda-monitoring/enable-lambda-monitoring/&quot;&gt;Enable monitoring for AWS Lambda&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.newrelic.com/docs/serverless-function-monitoring/aws-lambda-monitoring/enable-lambda-monitoring/instrument-your-own/#quickstarts&quot;&gt;Layer installation instructions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/newrelic/newrelic-lambda-extension/tree/main/examples/sam/go&quot;&gt;Sample Go application&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content:encoded><description>ReleasedOn: Thu, 03 Sep 2020 00:00:00 +0000.</description></item><item><title><![CDATA[Go agent v3.45.0]]></title><guid isPermaLink="false">R28gYWdlbnQtMy40NS4w</guid><link>https://docs.newrelic.com/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-45-0</link><pubDate>Thu, 24 Sep 2026 00:00:00 +0000</pubDate><content:encoded>&lt;div&gt;&lt;p&gt;We recommend updating to the latest agent version as soon as it&apos;s available. If your organization has established practices that prevent you from upgrading to the latest version, ensure that your agents are regularly updated to a version that&apos;s at most 90 days old. Read more about &lt;a href=&quot;https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/&quot;&gt;keeping your agent up to date&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;
&lt;h2&gt;3.45.0&lt;/h2&gt;
&lt;h3&gt;Added&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added new integration nrecho-v5. Note that previous major versions (v3,v4) are still available under their respective folders&lt;/li&gt;
&lt;li&gt;Added new integration nrgemini that instruments the genai package&lt;/li&gt;
&lt;li&gt;Added support for continuous profiling
    * NOTE: Continuous Profiling is a new feature which is not yet generally available for use. The agent-side component code is now present in the agent but to actually use it ahead of the General Availability release, you will need to contact your New Relic sales representative to join the preview early&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Fixed&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Fixed a bug where LLM messages would incorrectly be truncated&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Security&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Dependabot security updates
&lt;ul&gt;
&lt;li&gt;Bumped grpc from 1.82.1 to 1.83.1 in v3/integrations/nrgrpc and /v3&lt;/li&gt;
&lt;li&gt;Bumped amqp091-go from 1.9.0 to 1.13.0 in v3/integrations/nramqp&lt;/li&gt;
&lt;li&gt;Bumped echo/v4 from 4.9.0 to 4.15.3 in v3/integrations/nrecho-v4&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Support statement&lt;/h3&gt;
&lt;p&gt;We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
See the &lt;a href=&quot;https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/&quot;&gt;Go agent EOL Policy&lt;/a&gt; for details about supported versions of the Go agent and third-party components.&lt;/p&gt;</content:encoded><description>ReleasedOn: Thu, 24 Sep 2026 00:00:00 +0000.</description></item></channel></rss>