Skip to content

Releases: newrelic/go-agent

Release 3.33.0

01 May 19:05
424d175
Compare
Choose a tag to compare

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

04 Apr 20:06
0f93238
Compare
Choose a tag to compare

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, and nrgorilla integrations.
  • 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 in nrawsbedrock 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

27 Mar 20:08
cb651c4
Compare
Choose a tag to compare

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 and InvokeModelWithResponseStream 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, and NRCreateEmbedding 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.

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 in nrpgx5 integration
    • google.gopang.org/protobuf to 1.33.0 in nrmicro and nrgrpc integrations
    • github.com/jackc/pgx/v4 to 4.18.2 in nrpgx integration

AI Monitoring Configuration

New configuration options are available specific to AI monitoring. These settings include:

  • AIMonitoring.Enabled, configured via ConfigAIMonitoring.Enabled(bool) [default false]
  • AIMonitoring.Streaming.Enabled, configured via ConfigAIMonitoringStreamingEnabled(bool) [default true]
  • AIMonitoring.Content.Enabled, configured via ConfigAIMonitoringContentEnabled(bool) [default true]

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

15 Feb 20:32
487703c
Compare
Choose a tag to compare

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

25 Jan 20:15
1ef7dea
Compare
Choose a tag to compare

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

14 Dec 19:38
20541a9
Compare
Choose a tag to compare

3.29.0

Added

  • Security agent integration nrsecurityagent now reports security configuraiton information along with the overall Go Agent configuration values. (Updates nrsecurityagent 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. Deprecates WithCodeLocation 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

30 Nov 20:15
0100f62
Compare
Choose a tag to compare

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

16 Nov 19:26
0e521dc
Compare
Choose a tag to compare

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

19 Oct 19:17
79d3bfd
Compare
Choose a tag to compare

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

29 Sep 01:41
d0a46d0
Compare
Choose a tag to compare

3.26.0

Added

  • Extended implementation of the nrpgx5 integration (now v1.2.0). This instruments Postgres database operations using the jackc/pgx/v5 library, including the direct access mode of operation as opposed to requiring code to use the library compatibly with the standard database/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.