Releases: newrelic/go-agent
Release 3.33.0
3.33.0
Added
- Support for Zap Field Attributes
- Updated dependency on csec-go-agent in nrsecurityagent
Fixed
- Fixed an issue where running containers on AWS would falsely flag Azure Utilization
- Fixed a typo with nrecho-v3
- Changed nrslog example to use a context driven handler
These changes increment the affected integration package version numbers to:
- nrsecurityagent v1.3.1
- nrecho-v3 v1.1.1
- logcontext-v2/nrslog v1.2.0
- logcontext-v2/nrzap v1.2.0
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.
Release 3.32.0
3.32.0
Added
- Updates to support for the New Relic security agent to report API endpoints.
- Adds new wrapper function for the
nrecho
,nrgin
, andnrgorilla
integrations.
- Adds new wrapper function for the
- Handler to take New Relic transaction data from context automatically when using
nrslog
integration (thanks, @adomaskizogian!)
Fixed
- Adds missing license file to the
nropenai
integration. - Changes
*bedrockruntime.Client
parameters innrawsbedrock
integration to use a more general interface type, allowing the use of custom types which extend the bedrock client type. - Fixes
pgx5
pool example - Updated unit tests to check
Transaction.Ignore
- Updated
nrzap
unit tests to add background logger sugared test case.
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.
Release 3.31.0
3.31.0
Added
- Integration packages to instrument AI model invocations (see below).
- New package nrawsbedrock v1.0.0 introduced to instrument calls to Amazon Bedrock Runtime Client API
InvokeModel
andInvokeModelWithResponseStream
calls. Also provides a simple one-step method which invokes stream invocations and harvests the response stream data for you. - New package nropenai v1.0.0 introduced to instrument calls to OpenAI using
NRCreateChatCompletion
,NRCreateChatCompletionStream
, andNRCreateEmbedding
calls. - Dockerfile in the
examples/server
sample app which facilitates the easy creation of a containerized ready-to-run sample app for situations where that makes testing easier.
- New package nrawsbedrock v1.0.0 introduced to instrument calls to Amazon Bedrock Runtime Client API
Fixed
.Ignore
was not ignoring transaction. Fixes Issue #845.- Added nil error check in wrap function. Fixes Issue #862.
WrapBackgroundCore
background logger was not sending logs to New Relic. Fixes Issue #859.- Corrected pgx5 integration example which caused a race condition. Thanks to @WillAbides! Fixes Issue #855.
- Updated third-party library versions due to reported security or other supportability issues:
github.com/jackc/pgx/v5
to 5.5.4 innrpgx5
integrationgoogle.gopang.org/protobuf
to 1.33.0 innrmicro
andnrgrpc
integrationsgithub.com/jackc/pgx/v4
to 4.18.2 innrpgx
integration
AI Monitoring Configuration
New configuration options are available specific to AI monitoring. These settings include:
AIMonitoring.Enabled
, configured viaConfigAIMonitoring.Enabled(
bool)
[defaultfalse
]AIMonitoring.Streaming.Enabled
, configured viaConfigAIMonitoringStreamingEnabled(
bool)
[defaulttrue
]AIMonitoring.Content.Enabled
, configured viaConfigAIMonitoringContentEnabled(
bool)
[defaulttrue
]
AI Monitoring Public API Methods
Two new AI monitoring related public API methods have been added, as methods of the newrelic.Application
value returned by newrelic.NewApplication
:
AI Monitoring
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.
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 OpenAI
and Bedrock.
When AI monitoring is enabled with ConfigAIMonitoringEnabled(true)
, the agent will now capture AI LLM related data. This data will be visible under a new APM tab called AI Responses. See our AI Monitoring documentation for more details.
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.
Release 3.30.0
3.30.0
Added
- Updated the depencency on nrsecurityagent to 1.0.0.
- Added new integration, logcontext-v2/nrslog, which instruments logging via the new slog library.
Fixed
- Redacts license keys from error reporting.
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.
Release 3.29.1
3.29.1
Added
- Added Dockerized Unit Tests for Github Actions (internal build support)
Fixes
- Updated version of New Relic Security Agent (enables bug fixes released in that agent code for use with the Go Agent).
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.
Release 3.29.0
3.29.0
Added
- Security agent integration
nrsecurityagent
now reports security configuraiton information along with the overall Go Agent configuration values. (Updatesnrsecurityagent
to v1.2.0.) - 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
WithCodeLocationCallback
CLM option. DeprecatesWithCodeLocation
option (although the latter function is still supported for compatibility with existing code). - Added extended synthetics support for new
X-Newrelic-Synthetics-Info
HTTP headers. - Documentation fixes.
- Removed deprecated
ROADMAP.md
file.
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.
Release 3.28.1
3.28.1
Added
Added Supportability Metrics to nrfasthttp
(brings nrfasthttp
version to v1.0.1).
Always Link Transaction IDs to traces regardless of whether Distributed Tracing is enabled or not
Fixed
Fixed an issue where nil
Request.Body
could be set to non-nil
request.Body
with zero length when the security agent is enabled
Security
More Secure URL Redaction
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.
Release 3.28.0
3.28.0
Fixed
- Bumped gRPC from 1.54.0 -> 1.56.3 in the following packages /v3/integrations/nrgrpc, /v3/, /v3/integrations/nrgrpc
- Bumped golang.org/x/net from 0.8.0 -> 0.17.0 in package /v3/integrations/nrgraphqlgo
- Fixed issue where nrfasthttp would not properly register security agent headers
- Move fasthttp instrumentation into a new integration package, nrfasthttp
- Fixed issue where usage of io.ReadAll() was causing a memory leak
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.
Release 3.27.0
3.27.0
Added
- Added Support for getting Container ID's from cgroup v2 docker containers
- A new instrumentation package for RabbitMQ with distributed tracing support: nramqp
Fixed
- Unit tests repairs and improvements
- Removed deprecated V2 code from the repository. The support timeframe for this code has expired and is no longer recommended for use.
- Bumped github.com/graphql-go/graphql from 0.7.9 to 0.8.1
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.
Release 3.26.0
3.26.0
Added
- Extended implementation of the
nrpgx5
integration (now v1.2.0). This instruments Postgres database operations using thejackc/pgx/v5
library, including the direct access mode of operation as opposed to requiring code to use the library compatibly with the standarddatabase/sql
library.
Corrections
- See below for revised release notes for the 3.25.1 and the retracted 3.25.0 releases. We have clarified what was released at those versions; see also the revised notes for 3.22.0 and 3.22.1 for the same reason.
Support statement
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 Go agent EOL Policy for details about supported versions of the Go agent and third-party components.