У меня установлены следующие пакеты nuget:
- OpenTelemetry
- OpenTelemetry.Exporter.Console
- OpenTelemetry.Instrumentation.AspNetCore >
- OpenTelemetry.Instrumentation.Http
Код: Выделить всё
TracerProvider tracer = null;
try
{
...
app.MapRazorPages();
// using ResourceBuilder.CreateDefault has no effect, nor does moving init to top
tracer = Sdk.CreateTracerProviderBuilder()
.AddAspNetCoreInstrumentation()
.AddHttpClientInstrumentation()
.SetResourceBuilder(ResourceBuilder.CreateEmpty())
.AddSource("test")
.AddConsoleExporter()
.Build();
app.Run();
}
finally
{
tracer?.Dispose();
}
Код: Выделить всё
class MyClass
{
private static readonly ActivitySource _source1= new ActivitySource("test");
async Task MyMethod()
{
using var activity1 = _source1.StartActivity("action");
var source2 = new ActivitySource("test");
using var activity2 = source2.StartActivity("action");
...
}
}
- не имеет прослушивателя и активность 1 равна нулю
Код: Выделить всё
_source1 - имеет прослушиватель, а Activity2 является допустимым объектом.
Код: Выделить всё
source2
Подробнее здесь: https://stackoverflow.com/questions/781 ... -a-web-app
Мобильная версия