Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описывается, как включить и настроить сбор данных на основе OpenTelemetry в Azure Monitor Application Insights. Дистрибутив OpenTelemetry для Azure Monitor:
- Предоставляет распределение OpenTelemetry, которое включает поддержку функций, относящихся к Azure Monitor.
- Включает автоматическую телеметрию, включая библиотеки инструментирования OpenTelemetry для сбора трассировок, метрик, журналов и исключений.
- Позволяет собирать пользовательские данные телеметрии.
- Поддерживает динамические метрики для мониторинга и сбора дополнительных данных телеметрии из динамических веб-приложений в рабочей среде.
Дополнительные сведения о преимуществах использования дистрибутива OpenTelemetry в Azure Monitor см. в статье "Почему следует использовать дистрибутив Azure Monitor OpenTelemetry".
Чтобы узнать больше о сборе данных с помощью OpenTelemetry, ознакомьтесь с основами сбора данных или часто задаваемыми вопросами о OpenTelemetry.
Состояние выпуска OpenTelemetry
Предложения OpenTelemetry доступны для приложений .NET, Node.js, Python и Java. Для получения сведений о состоянии выпуска каждой функции см. часто задаваемые вопросы.
Активировать OpenTelemetry с помощью Application Insights
Выполните действия, описанные в этом разделе, для инструментирования приложения с помощью OpenTelemetry. Выберите вкладку для инструкций на определённом языке.
Примечание.
.NET охватывает несколько сценариев, включая классические ASP.NET, консольные приложения, Windows Forms (WinForms) и многое другое.
Предварительные условия
- Подписка Azure. Создание бесплатной подписки Azure.
- Ресурс Application Insights. Создание ресурса Application Insights.
- ASP.NET Core Application с помощью официально поддерживаемой версии .NET
Совет
Если вы переходите с классического API Application Insights, ознакомьтесь с нашей документацией по миграции.
Установка клиентской библиотеки
Установите последний Azure.Monitor.OpenTelemetry.AspNetCore
пакет NuGet:
dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore
Изменение приложения
Импортируйте пространство имен Azure.Monitor.OpenTelemetry.AspNetCore
, добавьте OpenTelemetry и настройте для работы с Azure Monitor в классе program.cs
.
// Import the Azure.Monitor.OpenTelemetry.AspNetCore namespace.
using Azure.Monitor.OpenTelemetry.AspNetCore;
var builder = WebApplication.CreateBuilder(args);
// Add OpenTelemetry and configure it to use Azure Monitor.
builder.Services.AddOpenTelemetry().UseAzureMonitor();
var app = builder.Build();
app.Run();
Скопируйте строку подключения из ресурса Application Insights.
Строка подключения уникальна и указывает, куда версия OpenTelemetry Azure Monitor отправляет собираемую телеметрию.
Совет
Если у вас еще нет ресурса Application Insights, следуйте этому руководству чтобы создать его. Рекомендуется создать новый ресурс, а не использовать существующий.
Чтобы скопировать строка подключения, выполните следующие действия.
- Перейдите в панель Overview ресурса Application Insights.
- Найдите строка подключения.
- Наведите указатель мыши на строку подключения и выберите значок 'Копировать в буфер обмена'.
Вставьте строку подключения в вашу среду
Чтобы вставить вашу строку подключения, выберите один из следующих параметров.
Внимание
Рекомендуется задавать строку подключения с помощью кода в локальных средах разработки и тестирования.
Для рабочей среды используйте переменную среды или файл конфигурации (только Java).
Установлено через переменную окружения - рекомендуется
Замените
<Your connection string>
в следующей команде вашей строкой подключения.APPLICATIONINSIGHTS_CONNECTION_STRING=<Your connection string>
Установлено через файл конфигурации - Только Java
Создайте файл конфигурации с именем
applicationinsights.json
и поместите его в тот же каталог, чтоapplicationinsights-agent-3.7.1.jar
и в следующем содержимом:{ "connectionString": "<Your connection string>" }
Замените
<Your connection string>
в предыдущем JSON на вашей уникальной строкой подключения.Настройка только с помощью кода - ASP.NET Core, Node.js и Python
См. пример настройки конфигурации строки подключения с помощью кода.
Примечание.
Если установить строку подключения в нескольких местах, переменная среды будет в приоритете в следующем порядке:
- Код
- Переменная среды
- Файл конфигурации
Подтвердите, что данные поступают
Запустите приложение, а затем откройте Application Insights в портал Azure. Для отображения данных может потребоваться несколько минут.
Application Insights теперь включен для приложения. Следующие шаги являются необязательными и позволяют дополнительно настраивать.
Внимание
При наличии двух или более служб, которые выводят данные телеметрии в один и тот же ресурс Application Insights, необходимо задать имена облачных ролей, чтобы правильно представить их на схеме приложений.
В рамках использования инструментирования Application Insights мы собираем диагностические данные и отправляем их в корпорацию Майкрософт. Эти данные помогают нам использовать и улучшать Application Insights. Дополнительные сведения см. в разделе Statsbeat в Azure Application Insights.
Примеры приложений
Примеры приложений OpenTelemetry Azure Monitor доступны для всех поддерживаемых языков:
- пример приложения ASP.NET Core
- Пример приложения NET
- Примеры приложений Java
- Примеры нативных приложений на Java GraalVM
- пример приложения Node.js
- Примеры приложений Python
Следующие шаги
- Дополнительные сведения о добавлении и изменении Azure Monitor OpenTelemetry см. в статье "Добавление и изменение Azure Monitor OpenTelemetry".
- Чтобы дополнительно настроить дистрибутив 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.