OpenTelemetry 1.0 Extensions Released
With the release of OpenTelemetry tracing specification reaching 1.0, and the subsequent release of the 1.0 release of the core components of .NET, I've pushed updates to my OpenTelemetry packages for:
While those packages didn't really change much, one thing that did was the introduction of the ResourceBuilder API, which lets me put in tags for all spans in a given system. Most likely, you'll use that API to specify the name of the resource:
services.AddOpenTelemetryTracing(builder => builder
.SetResourceBuilder(ResourceBuilder
.CreateDefault()
.AddService(Program.EndpointName))
.AddAspNetCoreInstrumentation()
.AddSqlClientInstrumentation(opt => opt.SetDbStatementForText = true)
.AddNServiceBusInstrumentation()
.AddZipkinExporter(o =>
{
o.Endpoint = new Uri("http://localhost:9411/api/v2/spans");
})
);
This ensures the resource name shows up in our traces:
You can of course set other resource-specific attributes, but that replaces in some collectors setting the resource name in the Zipkin collector.
I've updated my tracing examples (Hello World and Microservice) to 1.0 as well. Enjoy!