Open
Description
In preview 5, adding .WithOtlpExporter()
to .AddContainer(...)
would show OpenTelemetry logs, traces and metrics in the dashboard.
Since preview 6 this doesn't happen.
But if I had a dashboard container (mcr.microsoft.com/dotnet/aspire-dashboard or mcr.microsoft.com/dotnet/nightly/aspire-dashboard:8.0-preview):
var aspireDashboard = builder.AddContainer(
"aspire-dashboard",
"mcr.microsoft.com/dotnet/aspire-dashboard",
"8.0-preview")
.WithEndpoint(targetPort: 18888, port: 5018, name: "dash", scheme: "http", isProxied: true)
.WithEndpoint(targetPort: 18889, port: 5019, name: "otel", scheme: "http", isProxied: true)
.WithEnvironment("DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS", "true")
.WithEnvironment("ASPIRE_ALLOW_UNSECURED_TRANSPORT", "true")
.WithEnvironment("DASHBOARD__OTLP__AUTHMODE", "ApiKey")
.WithEnvironment("DASHBOARD__OTLP__PRIMARYAPIKEY", builder.Configuration["AppHost:OtlpApiKey"])
;
var service = builder.AddContainer(...)
.WithEndpoint(targetPort: 8080, port: 5012, name: "http", scheme: "http")
.WithEnvironment("OTEL_BLRP_SCHEDULE_DELAY", "1000")
.WithEnvironment("OTEL_BSP_SCHEDULE_DELAY", "1000")
.WithEnvironment("OTEL_METRIC_EXPORT_INTERVAL", "1000")
.WithEnvironment("OTEL_TRACES_SAMPLER", "always_on")
.WithEnvironment("OTEL_EXPORTER_OTLP_PROTOCOL", "grpc")
.WithEnvironment("OTEL_SERVICE_NAME", "hub")
.WithEnvironment("OTEL_RESOURCE_ATTRIBUTES", "service.instance.id=hub")
.WithEnvironment("OTEL_EXPORTER_OTLP_HEADERS", $"x-otlp-api-key={builder.Configuration["AppHost:OtlpApiKey"]}")
.WithEnvironment(ctx => ctx.EnvironmentVariables["OTEL_EXPORTER_OTLP_ENDPOINT"] = new HostUrl(hubAspireDashboard.GetEndpoint("otel").Url))
...
the dashboard from the aspireDashboard
container show telemetry from the service
container.
service
container is referenced from other resources and references other resources without any issues.