Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье содержатся рекомендации по фильтрации OpenTelemetry для приложений с помощью Azure Monitor Application Insights.
Причины, по которым может потребоваться отфильтровать данные телеметрии:
- Фильтрация данных телеметрии проверки работоспособности для снижения шума.
- Обеспечение сбора персональных данных и учетных данных.
- Фильтрация низкозначных данных телеметрии для оптимизации производительности.
Дополнительные сведения о концепциях OpenTelemetry см. в статье Обзор OpenTelemetry или Вопросы и ответы по OpenTelemetry.
Фильтрация телеметрии с помощью библиотек инструментирования
Список всех библиотек инструментирования, включенных в дистрибутив Azure Monitor OpenTelemetry, см. в статье "Добавление и изменение Azure Monitor OpenTelemetry для .NET", Java, Node.js и приложений Python.
Многие библиотеки инструментирования предоставляют вариант фильтрования. Инструкции см. в соответствующих файлах readme:
1 Мы включили инструментирование SqlClient в наш пакет, пока он еще находится в бета-версии. Когда он достигает стабильного выпуска, мы включаем его в качестве стандартной ссылки на пакет. До тех пор, чтобы настроить инструментирование SQLClient, добавьте OpenTelemetry.Instrumentation.SqlClient
ссылку на пакет в проект и используйте его общедоступный API.
dotnet add package --prerelease OpenTelemetry.Instrumentation.SqlClient
builder.Services.AddOpenTelemetry().UseAzureMonitor().WithTracing(builder =>
{
builder.AddSqlClientInstrumentation(options =>
{
options.SetDbStatementForStoredProcedure = false;
});
});
Фильтрация телеметрии с помощью процессоров диапазона
Использование пользовательского процессора:
Совет
Добавьте процессор, показанный здесь перед добавлением Azure Monitor.
// Create an ASP.NET Core application builder. var builder = WebApplication.CreateBuilder(args); // Configure the OpenTelemetry tracer provider to add a new processor named ActivityFilteringProcessor. builder.Services.ConfigureOpenTelemetryTracerProvider((sp, builder) => builder.AddProcessor(new ActivityFilteringProcessor())); // Configure the OpenTelemetry tracer provider to add a new source named "ActivitySourceName". builder.Services.ConfigureOpenTelemetryTracerProvider((sp, builder) => builder.AddSource("ActivitySourceName")); // Add the Azure Monitor telemetry service to the application. This service will collect and send telemetry data to Azure Monitor. builder.Services.AddOpenTelemetry().UseAzureMonitor(); // Build the ASP.NET Core application. var app = builder.Build(); // Start the ASP.NET Core application. app.Run();
Добавьте
ActivityFilteringProcessor.cs
в проект, используя следующий код:public class ActivityFilteringProcessor : BaseProcessor<Activity> { // The OnStart method is called when an activity is started. This is the ideal place to filter activities. public override void OnStart(Activity activity) { // prevents all exporters from exporting internal activities if (activity.Kind == ActivityKind.Internal) { activity.IsAllDataRequested = false; } } }
Если конкретный источник не добавляется явным образом с помощью AddSource("ActivitySourceName")
, то никакие действия, созданные с помощью этого источника, экспортируются.
Следующие шаги
- Дополнительные сведения о настройке дистрибутива OpenTelemetry см . в разделе конфигурации OpenTelemetry в Azure Monitor.
- Чтобы просмотреть исходный код, ознакомьтесь с репозиторием GitHub в Azure Monitor AspNetCore.
- Чтобы установить пакет NuGet, проверить наличие обновлений или просмотреть заметки о выпуске, ознакомьтесь со страницей пакета NuGet Для Azure Monitor AspNetCore.
- Дополнительные сведения об Azure Monitor и OpenTelemetry см. в примере приложения Azure Monitor.
- Чтобы получить дополнительные сведения об OpenTelemetry и соответствующем сообществе, ознакомьтесь с репозиторием .NET для OpenTelemetry на GitHub.
- Чтобы включить функции использования, ознакомьтесь со статьей о включении наблюдения за пользователями в Интернете или браузере.
- Чтобы просмотреть часто задаваемые вопросы, действия по устранению неполадок, варианты поддержки или предоставить отзыв о OpenTelemetry, ознакомьтесь со справкой, поддержкой и отзывом по Azure Monitor Application Insights.