Is it possible to instrument java lambda function with open telemetry without instrumentation layer?

59 Views Asked by At

I am trying to use otel for lambdas but having some challenges.

  • Java lambda instrumentation is very slow
  • Not clear if it is really necessary to use java instrumentation layer for sending opentelemetry
  1. Used java instrumentation without collector layer. I followed this documentation: https://opentelemetry.io/docs/faas/lambda-auto-instrument/

Tried to use java instrumentation but cold start takes more than 20 seconds which is a lot. SnapStart didn't really bring improvements. I was seeing similar reported issues for ADOT layer layer but didn't see if there is a solution. So I thought maybe it can be instrumented without this layer as an option?

  1. Another documentation suggests for other languages to follow generic documentation + collector layer which I thought can be used for Java but in the same time there is design proposal which says:

Lambda function instrumentation: Lambda function instrumentation is the first step of OpenTelemetry Lambda support, which is wrapping the Lambda handler function with beginSpan() and endSpan(), adding OpenTelemetry attributes by following trace and resource FaaS spec. Java and Python implementations are in place, other languages can refer to the code for them.

And it sounds like instrumentation layer is kind of necessary but it may be that design proposal is outdated. Does anyone have information on that? In general which is the right documentation to understand how it is all supposed to work together?

0

There are 0 best solutions below