The Coralogix AWS Lambda Telemetry Exporter is an AWS Lambda extension that uses AWS Lambda Telemetry API and provides a seamless way to collect Lambda function logs as well as Lambda platform logs, metrics, and traces.
The Coralogix AWS Lambda Telemetry Exporter supersedes the previously offered Coralogix Extension for AWS Lambda extending its capabilities beyond logs.
The Coralogix AWS Lambda Telemetry Exporter is currently available in the AWS Serverless Application Repository as an open beta. We encourage you to try it out, and we welcome any feedback. Please keep in mind that the current version reports only logs and traces. Reporting of metrics will be added in an upcoming update.
coralogix-aws-lambda-telemetry-exporterby adding environment variables described in the “Configuration” section below.
coralogix-aws-lambda-telemetry-exporter-*layer, and click “Add”. Be careful to choose the layer corresponding to the architecture (x86_64 / arm64) used by the function. If you’re unsure about the architecture, it is displayed on the same page above the section where you’re selecting the layer.
coralogix-lambda-extensionyou may want to remove it. You can do it by clicking the “Layers” box, then clicking “Edit”, selecting the lambda layer and clicking “Remove”.
REPORT_DURING_AND_AFTER_INVOCATION. The optimal choice depends on how your Lambda function is used. Read the “Reporting Strategies” Section below to understand how to choose the best strategy for your Lambda function.
Due to the serverless nature of AWS Lambda and Lambda extensions, the
telemetry-exporter cannot freely do its job after/between invocations of the monitored Lambda function. A tradeoff has to be made between timely delivery of the telemetry and keeping the overheads low.
The optimal strategy choice depends on how often the function is invoked and how long it runs. The
coralogix-aws-lambda-telemetry-exporter offers three reporting strategies that enable you to adjust the reporting to the characteristics of your function.
LOW_OVERHEAD– Recommended for frequently called functions. The telemetry may be batched across many invocations of the function, and the
telemetry-exporterwill avoid keeping the Lambda execution environment active after an invocation is complete (therefore it will avoid adding billable time to the lambda invocations). This may result in a long delay (in the order of minutes) in the delivery of telemetry if the Lambda stops being called frequently.
REPORT_AFTER_INVOCATION– Recommended for rarely called functions with short to moderate execution times. The telemetry will be reported at the end of each invocation of the function. This will add a small amount of billable time to each invocation.
REPORT_DURING_AND_AFTER_INVOCATION– Recommended for rarely called functions with long execution times (more than 15 seconds). The telemetry will be reported in regular intervals during the execution of the function and then after the execution completes. This strategy will add 2-3 seconds of billable time to each Lambda invocation.
Regardless of the chosen reporting strategy, there are some constraints on when certain kinds of telemetry can be reported. For example, a total billable time of an invocation cannot be reported earlier than during the next invocation.
Our world-class customer success team is available 24/7 to walk you through your setup and answer any questions that may come up.
Feel free to reach out to us via our in-app chat or by sending us an email to [email protected].