Notes
Javaruntime support improvements - automatic detection and proper mode routingEnhanced log processing reliability - ensures all logs are properly tagged before sending
Reduced resource usage by optimizing channel creation
Improved
log processingefficiency
Fixed
Java agent version reporting
Log metadata stamping for
pre-invokelogsUnnecessary warning messages in
APM mode
Notes
Configuration: Add support for
NEW_RELIC_EXTENSION_SEND_PLATFORM_LOGSEnvironment variableMetadata: Add tags to entity for
Extension versionandAgent versionLogging: Change secondary
Log levelto DEBUG
Fixed
Runtime Detection: Enhance runtime detection logic for improved agent compatibility
Telemetry: Implement global fallback ARN handling across telemetry components
Validation: Update code for additional checks
Notes
Implemented pre-invoke log buffering with metadata validation and fallback ARN support
Removed debug log for buffering in
pre-invokebufferAdded fallback code for
Aws-arn
Fixed
- Remove
License keyexposure from CloudWatch logs
Notes
Improved panic handling in main function to ensure Lambda continue
Added new telemetry buffer for
APMmode andShutdownlogsEnhanced versioning support and logging in
APMmode
Fixed
Updated platform report line to send as
jsoninstead of compressedEU endpoint detection for license keys fetched from
SSM/Secrets Manager
Notes
Removed unnecessary trace logging for skipped
FunctionandExtensionlogs.Updated parsing logic to scan the first 50 characters instead of a 100-byte slice. Ensuring safe handling of multi-byte
UTF-8 characters(like emojis) without truncation errors.
Fixed
Resolved an issue where requests were occasionally not instrumented in APM mode.
Enabled automatic
NEW_RELIC_LICENSE_KEYfallback.
Major Release: Rust Rewrite
Complete rewrite of the New Relic Lambda Extension from Go (v2.3.24) to Rust for improved performance, memory safety, and reduced cold start times.
New Features
APM Mode Support: Lambda functions can now report directly to New Relic APM platform as application entities
- Enable with
NEW_RELIC_APM_LAMBDA_MODE=true - Full support for metrics, spans, errors, events, and transaction traces
- Platform logs converted to APM metrics (
apm.lambda.transaction.*) - Enhanced error events for timeouts and faults with distributed tracing context
- See APM Mode Documentation for details
- Enable with
Request-Scoped Processing: Improved payload correlation and lifecycle management
Intelligent Buffer Management: Handles agent payloads that arrive before request context with automatic cleanup
Performance Improvements
- Faster Cold Starts: Optimized Rust compilation with minimal dependencies and LTO
- Lower Memory Usage: Reduced memory footprint with zero-cost abstractions
- Concurrent Processing: Parallel processing of logs, platform metrics, and agent telemetry
- Connection Pooling: HTTP client connection reuse across invocations
Security & Reliability
- Memory Safety: Rust's ownership system prevents memory leaks and buffer overflows
- Panic Safety: Global panic handler prevents Lambda crashes from extension failures
- Type Safety: Compile-time guarantees eliminate entire classes of runtime errors
Technical Changes
- Migrated from Go
v1.23to Rust 2021 edition - Built on Tokio async runtime
- AWS SDK v1 for Rust (aws-config 1.8, aws-sdk-secretsmanager 1.88, aws-sdk-ssm 1.93)
- Modular architecture with clean separation of concerns
Configuration
All existing environment variables remain unchanged for backwards compatibility. Key variables:
NEW_RELIC_LICENSE_KEY: New Relic license keyNEW_RELIC_APM_LAMBDA_MODE: Enable APM mode (default: false)NEW_RELIC_EXTENSION_SEND_FUNCTION_LOGS: Send function logs (default: false)NEW_RELIC_LAMBDA_LOG_LEVEL: Extension log level supports more granular control withinfo,debug,warn,error,trace,all
Full configuration details in the README.
Migration Notes
- Drop-in Replacement: No code changes required for existing users
- Environment Variables: All configuration remains the same
- Binary Compatibility: Maintains compatibility with existing New Relic agents
- Performance: Expect 20-40% faster cold starts and lower memory usage
[2.3.24] - Go Implementation (Legacy)
Last Go-based version before Rust migration. Maintained for reference and legacy support.
Fixed
- Updated Go std lib version to
1.23.12to resolveCVE-2025-47907 - APM Mode: Resolved license key issue with SM/SSM in APM Mode & resolved log prefix
New feature
- Added Log Level Prefix
DEBUGandINFOto the existing prefix[NR_EXT] - APM Mode: Added tags to APM Mode
- APM Mode: Added Lambda ARN to host for APM connect
- APM Mode: Updated backoff duration for
NEW_RELIC_HOST - APM Mode: Refactor APM error event data
- APM Mode: Added ruby support
Notes
- Added option to build
nodejstest Layers for local testing
Fixed
- Updated AWS SDK and Go Version to address Security Vulnerabilities
[CVE-2020-8911, CVE-2020-8912, CVE-2025-0913, CVE-2025-4673]
Notes
- Added
APMconnect retry logic - Added
godebugto resolve AWS Firewall issue - Added
requestIdextraction from logs forNode.jsruntime
Fixed
- Updated Readme for
--enable-license-key-secret
Notes
- APM Fusion Mode: Limited Preview