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_DELIMITERenvironment variables similar to thelog-ingestion-lambdato 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_64andmake dist-arm64.
Fixed issue
- Fixed
NR_EXTlog lines. The extension will not print anyNR_EXTline whenlogsEnabledis false, including the startup line #226.
Notes
Adds local testing for Extension. Local testing is enabled by setting
NEWRELIC_LOCAL_TESTINGtotrue. Currently it supports Python runtime only, and generates Lambda layers forx86andarmarchitectures usingpublish.shand invokes the test Lambdas usingtest.shscript.Removes
SSM parameter storecalls. Extension has sanitycheck calls toSSM storethat adds to production quotas for customers. CallSSM storeonly whenNEW_RELIC_LICENSE_KEY_SSM_PARAMETER_NAMEvar is set totrue.Adds timeout for calls to
Secrets Manager&SSM Parameter Store.Gives priority to
NEW_RELIC_LICENSE_KEYand bypass calls toSecrets ManagerifNEW_RELIC_LICENSE_KEYis set.
Fixed issue
- Resolved Extension warning messages for Node.js runtime with ESM scripts. Previously, correctly configuring
newrelic-lambda-wrapper.handlerandNEW_RELIC_LAMBDA_HANDLERdid not eliminate warning message for the Node.js ESM scripts. The solution involved usingNEW_RELIC_USE_ESMto 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
.mjsfile 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.