On this page:

Related pages:

Your Rating:
0 rates
AppDynamics provides Serverless Application Performance Monitoring (Serverless APM) functionality in the form of a tracer library. This topic discusses how the tracer correlates business transactions.

Business Transaction Correlation Architecture 

Serverless APM for AWS Lambda correlates business transactions with upstream and downstream calls. APM agents connect directly with your serverless functions to generate business transactions. End User Monitoring (EUM) agents connect outside the serverless functions to the business transaction itself. 

This diagram illustrates how the tracer correlates business transactions through a serverless function to APM and EUM agents: 

Business Transaction Correlation Process

Serverless APM correlates calls flowing through your AWS Lambda function with activity in upstream or downstream components. 

Business transaction correlation occurs through an opaque correlation string that the application passes across the wire. First, the tracer generates the correlation string at an exit call, and then the application passes the correlation string from the exit call to its endpoint. The downstream component retrieves the correlation string to continue the business transaction. This process enables Serverless APM for AWS Lambda to construct the flow map. 

Correlation String Transportation

Your application needs to pass the correlation string, generated by the tracer, to correlate a business transaction between multiple services. The correlation string must be serialized and communicated alongside the application payload.

Inbound HTTP Calls

If you pass the correlation string through an HTTP call, the string is passed as an HTTP header using the tracer's getCorrelationHeader method. This method searches your code's object schema for a key called singularityheader in your InputStream object. Correlation occurs when getCorrelationHeader finds singularityheader. If the header cannot be found, the tracer creates a new business transaction.

Other Protocols

For protocols other than HTTP, you need to define protocol-specific transportation of the correlation string to enable business transaction correlation. 

The tracer creates a new business transaction if:

  • You have not arranged for the correlation string to be passed, or
  • The tracer cannot find the correlation string.

To get started, see Instrument Serverless APM for AWS Lambda.

Amazon Web Services, the AWS logo, AWS, and any other AWS Marks used in these materials are trademarks of Amazon.com, Inc. or its affiliates in the United States and/or other countries.

  • No labels