signalfx / lambda-layer-versions

8 stars 3 forks source link

ERROR In NodeJS Instrumentation #83

Open ccoqueiro opened 1 year ago

ccoqueiro commented 1 year ago

Hello Everyone,

We tried to configure the instrumentation for aws nodejs, but this one returns the following error:

undefined ERROR Exporter "otlp" requested through environment variable is unavailable.

This is environment used:

AWS_LAMBDA_EXEC_WRAPPER = /opt/nodejs-otel-handler OTEL_EXPORTER_OTLP_METRICS_ENDPOINT = https://ingest.us1.signalfx.com/v2/datapoint/otlp OTEL_EXPORTER_OTLP_METRICS_PROTOCOL = http/protobuf OTEL_EXPORTER_OTLP_TRACES_ENDPOINT = https://ingest.us1.signalfx.com/v2/trace/otlp OTEL_EXPORTER_OTLP_TRACES_PROTOCOL = http/protobuf OTEL_INSTRUMENTATION_AWS_LAMBDA_FLUSH_TIMEOUT = 300000 OTEL_LAMBDA_LOG_LEVEL = DEBUG OTEL_RESOURCE_ATTRIBUTES | deployment.environment=lab OTEL_SERVICE_NAME = NodejsSample

Tested versions of lambda layers versions: 0.6.1/0.5.0

seemk commented 1 year ago

Hi, I think this was a bug in OpenTelemetry where it logged an invalid error message. Everything should still work as is.

The OpenTelemetry versions have been upgraded in latest releases of splunk-otel-js, so perhaps the Lambda layer needs to be upgraded to the most recent version.

ccoqueiro commented 1 year ago

Hi @seemk, thank you very much for the information, I really understand that it is a bug, but you killed the riddle, probably has not yet been updated the lambda layer, this update would be something simple to accomplish?

seemk commented 1 year ago

I believe there’s a new Lambda layer available now: https://github.com/signalfx/lambda-layer-versions/blob/main/splunk-apm/splunk-apm.md

It contains a newer OpenTelemetry version which should no longer produce the "otlp" error message.

ccoqueiro commented 1 year ago

Unfortunately, after updating the lambda layer the error still the same, at least for nodejs, in Java the same problem does not occur