Notes
Introduces support for Ruby Lambda runtime.
Adds tags for logs, and introduces environment variables to configure custom attributes or other metadata when sending logs directly using extension. Use
NR_TAGS
&NR_ENV_DELIMITER
environment variables similar to thelog-ingestion-lambda
to add metadata to the logs.Removes debug logs which get printed for each log line. Modifies confusing message log - mainLoop: blocking is confusing customer and adds payloadSize to the log message
Telemetry client error: %s, payload size: %d bytes"
.Updates on .NET Extension example to use newly released New Relic .NET Lambda layer instead of OpenTracing.
Updates on readme build step. Updated target for make command, example
make dist-x86_64
andmake dist-arm64
.
Fixed issue
- Fixed
NR_EXT
log lines. The extension will not print anyNR_EXT
line whenlogsEnabled
is false, including the startup line #226.
Notes
Adds local testing for Extension. Local testing is enabled by setting
NEWRELIC_LOCAL_TESTING
totrue
. Currently it supports Python runtime only, and generates Lambda layers forx86
andarm
architectures usingpublish.sh
and invokes the test Lambdas usingtest.sh
script.Removes
SSM parameter store
calls. Extension has sanitycheck calls toSSM store
that adds to production quotas for customers. CallSSM store
only whenNEW_RELIC_LICENSE_KEY_SSM_PARAMETER_NAME
var is set totrue
.Adds timeout for calls to
Secrets Manager
&SSM Parameter Store
.Gives priority to
NEW_RELIC_LICENSE_KEY
and bypass calls toSecrets Manager
ifNEW_RELIC_LICENSE_KEY
is set.
Fixed issue
- Resolved Extension warning messages for Node.js runtime with ESM scripts. Previously, correctly configuring
newrelic-lambda-wrapper.handler
andNEW_RELIC_LAMBDA_HANDLER
did not eliminate warning message for the Node.js ESM scripts. The solution involved usingNEW_RELIC_USE_ESM
to detect ESM scripts #209.
Fixed issues
Fixed crashing on closed pipe caused by race condition during extension startup.
Fixed crashing on write to closed channel due to race condition during extension shutdown.
Fixed handler checks for Docker and ESM JS environments.
Minor version bump for Go grpc, Go net, and JAVA gson.
Notes
- Includes additional debugging prints for troubleshooting the logserver logic.
Fixed issue
- Fixed a bug that used to crash the Extension when a single telemetry payload exceeds 1Mb after compression.
Fixed issues
Updated the SAM template for Python to use the latest resources for Python 3.10.
Added additional debug logging and simplified the code for sending log payloads to New Relic.
Notes
Added support for handlers with the
.mjs
file extension.Added support to allow New Relic license key to be fetched from an SSM parameter.
Fixed issue
- Bumped dependencies to be compatible with the latest Golang 1.19 features.
Notes
HTTP timeout is increased to 2.4 seconds.
Code cleanup around timeout logic.
Notes
- Adds support to customize the duration of retry attempts to send payload data to New Relic using the environmental variable
NEW_RELIC_DATA_COLLECTION_TIMEOUT
. This gives you more control over the expected runtime of your application. Note that the extension may need to send more than one payload. The value of this timeout can be any valid Golang duration string. For example, 10s = 10 seconds; 500ms = 500 milliseconds; 1m = 1 minute. See https://pkg.go.dev/maze.io/x/duration#ParseDuration for more info. The default timeout value is 10s.
Notes
- Prevents panic occurrings when request id map is accessed concurrently.