AWS Lambda integration assistance

Hello I am trying to integrate the New Relic AWS lambda monitoring plugin into our account. We current are forwarding our cloudwatch logs to new relic by following these directions

We have also modified our lambda and attached New Relic’s layer and set env variables according to

We can see cloudwatch events in New Relic but have not been able to get error messages, or distributed tracing for lambdas yet. Would someone be able to assist integrating this step?

hey @aidan6,

Thanks for posting your question about how to instrument a Lambda function using a Metric Streams integration + legacy method.

Which language is your function? Depending on the language, we may or may not have a layer you can use. Node.js, Python, and Java functions have layers which include a wrapper that loads an agent + Extension that ships payloads (bypassing CloudWatch). Go and .NET functions don’t have a layer with a no-code-change wrapper and agent, but they can use the Extension layer which just has the Extension.

The Extension has these config options:

It’s also a good idea to check your Metric Stream integration to make sure it is working. If it says no metrics have been received, it’s likely due to either a permissions issue:


Or you need to configure the Metric Stream in CloudWatch → Streams. I recommend the CloudFormation option and make sure to specify the Config S3 backup bucket name field. Stack creation completed successfully after I specified this field.

Note: Some of the legacy docs may not be updated yet to include using the Extension layer as an option to ship invocation telemetry instead of the newrelic-log-ingestion function.

Here’s how you can tell if your function is instrumented, meaning the NR_LAMBDA_MONITORING payload without the Extension, or Agent telemetry bytes with Extension has made it to New Relic.–awslambdainvocation

1 Like