-
Notifications
You must be signed in to change notification settings - Fork 68
Description
name: The lambda layer does not have the AWS X-Ray or AWS EMF exporters even though they are mentioned in the documentation
about: Create a report to help us improve
title: '.NET Lambda layer missing exporters'
labels: bug
assignees: ''
Describe the bug
A clear and concise description of what the bug is.
Using the lambda layer for OTEL in a .net application, when providing a custom config with AWS XRay or AWS EMF exporters crashes the extension.
Using the lambda layer with the default configuration also crashes the layer
Steps to reproduce
If possible, provide a recipe for reproducing the error.
What did you expect to see?
A clear and concise description of what you expected to see.
Otel collector running and accepting metrics and traces and able to export them to xray and awsemf
What did you see instead?
A clear and concise description of what you saw instead.
- When using a custom config.yaml
{"level":"warn","ts":1764945411.4710066,"logger":"lifecycle.manager","msg":"Failed to start the extension","error":"failed to get config: cannot unmarshal the configuration: decoding failed due to the following error(s):\n\n'exporters' unknown type: \"awsxray\" for id: \"awsxray\" (valid values: [debug otlp otlphttp prometheusremotewrite])"}
{"level":"info","ts":1764945411.47115,"msg":"done","error":"failed to get config: cannot unmarshal the configuration: decoding failed due to the following error(s):\n\n'exporters' unknown type: \"awsxray\" for id: \"awsxray\" (valid values: [debug otlp otlphttp prometheusremotewrite]); Post \"http://169.254.100.1:9001/2020-01-01/extension/init/error\": net/http: invalid header field value for \"Lambda-Extension-Function-Error-Type\"","errorCauses":[{"error":"failed to get config: cannot unmarshal the configuration: decoding failed due to the following error(s):\n\n'exporters' unknown type: \"awsxray\" for id: \"awsxray\" (valid values: [debug otlp otlphttp prometheusremotewrite])"},{"error":"Post \"http://169.254.100.1:9001/2020-01-01/extension/init/error\": net/http: invalid header field value for \"Lambda-Extension-Function-Error-Type\""}]}
{"time":"2025-12-05T14:36:51.486Z","type":"platform.initRuntimeDone","record":{"initializationType":"on-demand","phase":"init","status":"error","errorType":"Extension.Crash"}}
{"time":"2025-12-05T14:36:51.486Z","type":"platform.extension","record":{"name":"collector","state":"Registered","events":["INVOKE","SHUTDOWN"]}}
{"time":"2025-12-05T14:36:51.486Z","type":"platform.initReport","record":{"initializationType":"on-demand","phase":"init","status":"error","errorType":"Extension.Crash","metrics":{"durationMs":817.725}}}
- When running with no custom configuration:
{
"time": "2025-12-05T14:49:01.394Z",
"type": "platform.extension",
"record": {
"name": "collector",
"state": "InitError",
"events": [
"SHUTDOWN",
"INVOKE"
],
"errorType": "Extension.InitError"
}
}
{
"time": "2025-12-05T14:49:01.394Z",
"type": "platform.extension",
"record": {
"name": "collector",
"state": "InitError",
"events": [
"SHUTDOWN",
"INVOKE"
],
"errorType": "Extension.InitError"
}
}
{
"time": "2025-12-05T14:49:01.394Z",
"type": "platform.initReport",
"record": {
"initializationType": "on-demand",
"phase": "init",
"status": "error",
"errorType": "Extension.InitError",
"metrics": {
"durationMs": 358.428
}
}
}
{
"time": "2025-12-05T14:49:01.413Z",
"type": "platform.initStart",
"record": {
"initializationType": "on-demand",
"phase": "invoke",
"runtimeVersion": "provided:al2023.v117",
"runtimeVersionArn": "arn:aws:lambda:eu-west-1::runtime:b05edb8ee2d750d3d6c1c858c7d73f338fc72e15c1a64f4440827804eaafc4b4",
"functionName": "***",
"functionVersion": "$LATEST",
"instanceId": "***",
"instanceMaxMemory": 536870912
}
}
{
"level": "info",
"ts": 1764946141.7013075,
"msg": "Launching OpenTelemetry Lambda extension",
"version": "v0.132.0"
}
{
"level": "info",
"ts": 1764946141.7122188,
"logger": "telemetryAPI.Listener",
"msg": "Listening for requests",
"address": "sandbox.localdomain:64713"
}
{
"level": "info",
"ts": 1764946141.7136273,
"logger": "telemetryAPI.Client",
"msg": "Subscribing",
"baseURL": "http://169.254.100.1:9001/2022-07-01/telemetry"
}
{
"time": "2025-12-05T14:49:01.714Z",
"type": "platform.telemetrySubscription",
"record": {
"name": "collector",
"state": "Subscribed",
"types": [
"platform"
]
}
}
{
"level": "info",
"ts": 1764946141.7165945,
"logger": "telemetryAPI.Client",
"msg": "Subscription success",
"response": "\"OK\""
}
{
"level": "info",
"ts": 1764946141.7166524,
"logger": "NewCollector",
"msg": "Using default config URI",
"uri": "/opt/collector-config/config.yaml"
}
{
"level": "warn",
"ts": 1764946141.728118,
"logger": "lifecycle.manager",
"msg": "Failed to start the extension",
"error": "unable to start, otelcol state is Closed"
}
{
"level": "info",
"ts": 1764946141.7294793,
"msg": "done",
"error": "unable to start, otelcol state is Closed"
}
{
"time": "2025-12-05T14:49:01.732Z",
"type": "platform.initRuntimeDone",
"record": {
"initializationType": "on-demand",
"phase": "invoke",
"status": "error",
"errorType": "Extension.InitError"
}
}
{
"time": "2025-12-05T14:49:01.732Z",
"type": "platform.extension",
"record": {
"name": "collector",
"state": "InitError",
"events": [
"INVOKE",
"SHUTDOWN"
],
"errorType": "Extension.InitError"
}
}
{
"time": "2025-12-05T14:49:01.732Z",
"type": "platform.initReport",
"record": {
"initializationType": "on-demand",
"phase": "invoke",
"status": "error",
"errorType": "Extension.InitError",
"metrics": {
"durationMs": 318.612
}
}
}
What version of collector/language SDK version did you use?
Version: (e.g., v0.58.0, v1.11.0, etc)
arn:aws:lambda:eu-west-1:184161586896:layer:opentelemetry-collector-amd64-0_17_0:1
What language layer did you use?
Config: (e.g., Java, Python, etc)
.NET
Additional context
Add any other context about the problem here.