Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Машинное обучение Azure использует интеграцию с Azure Monitor для отслеживания метрик и журналов для сетевых конечных точек. Метрики можно просматривать на диаграммах, сравнивать метрики между конечными точками и развертываниями, закреплять метрики на панели мониторинга портал Azure, настраивать оповещения, таблицы журналов запросов и отправлять журналы в поддерживаемые целевые объекты. Application Insights также можно использовать для анализа событий из пользовательских контейнеров.
Метрики: для метрик на уровне конечной точки, таких как задержка запросов, запросы в минуту, новые подключения в секунду и сетевые байты, можно просмотреть подробные сведения на уровне развертывания или уровне состояния. Вы также можете детализировать метрики уровня развертывания, такие как использование ЦП/ GPU и память или использование дисков на уровне экземпляра. В Monitor эти метрики можно отслеживать на диаграммах, а также настраивать панели мониторинга и оповещения для дальнейшего анализа.
Журналы. Вы можете отправлять метрики в рабочую область Log Analytics, где можно использовать синтаксис запросов Kusto для запроса журналов. Вы также можете отправлять метрики в учетные записи службы хранилища Azure или в Центры событий Azure для дальнейшей обработки. Для трафика, журналов консоли (контейнера) и событий, связанных с сетевыми конечными точками, можно использовать выделенные таблицы журналов. Запросы Kusto поддерживают сложные возможности анализа и присоединение нескольких таблиц.
Application Insights: курированные среды включают интеграцию с Application Insights. Эту интеграцию можно включить или отключить при создании сетевого развертывания. При включении встроенные метрики и журналы отправляются в Application Insights. Затем можно использовать встроенные функции Application Insights для дальнейшего анализа. Примерами этих функций являются динамические метрики, поиск транзакций, представление сбоев и представление производительности.
В этой статье вы узнаете, как:
- Выберите правильный метод для просмотра и отслеживания метрик и журналов.
- Просмотр метрик для конечной точки в Сети.
- Создайте панель мониторинга для метрик.
- Создайте метрическое оповещение.
- Просмотр журналов для конечной точки в Сети.
- Используйте Application Insights для отслеживания метрик и журналов.
Предварительные условия
- Онлайн-конечная точка Машинное обучение Azure
- По крайней мере доступ читателя к конечной точке
Используйте метрики
На портале Azure вы можете просмотреть страницы метрик для онлайн конечных точек и развертываний.
Доступ к метрикам из Студия машинного обучения Azure
Простой способ доступа к страницам метрик — это ссылки, доступные в пользовательском интерфейсе Студия машинного обучения Azure. Эти ссылки можно найти на вкладке "Сведения " страницы конечной точки. Эти ссылки ведут на страницу метрик в портале Azure для конечной точки или развертывания.
Чтобы получить доступ к страницам метрик с помощью ссылок, доступных в студии, сделайте следующее:
В Azure Machine Learning Studio перейдите в вашу рабочую область.
В разделе "Ресурсы" выберите "Конечные точки".
Выберите имя конечной точки.
В разделе атрибуты конечной точки выберите "Просмотр метрик".
Портал открывается на странице метрик конечной точки.
В Azure Machine Learning Studio на странице конечной точки перейдите в раздел развертывания, а затем выберите «Просмотреть метрики».
Портал открывается на странице с метриками развертывания.
Доступ к метрикам из портал Azure
Метрики для конечной точки или развертывания можно просмотреть на портале Azure. Выполните следующие действия:
Переход на портал Azure.
Перейдите к виртуальной конечной точке или ресурсу развертывания.
Конечные точки и развертывания в Сети — это ресурсы Azure Resource Manager. Их можно найти, перейдя в группу ресурсов, а затем найдя типы ресурсов онлайн-конечная точка для Машинного обучения и онлайн-развертывание для Машинного обучения.
На странице ресурсов в разделе "Мониторинг" выберите "Метрики".
Доступные метрики
Отображаемые метрики зависят от выбранного ресурса. Метрики для сетевых конечных точек и сетевых развертываний различаются.
Метрики для сферы конечной точки
Сведения о метриках, доступных в области веб-конечной точки, см. в статье "Поддерживаемые метрики для Microsoft.MachineLearningServices/workspaces/onlineEndpoints".
Регулирование пропускной способности
Пропускная способность регулируется, если квоты превышаются для управляемых сетевых конечных точек. Дополнительные сведения об ограничениях для онлайновых конечных точек см. в статье о квотах и ограничениях в Машинное обучение Azure, онлайновых конечных точек и пакетных конечных точек. Чтобы определить, ограничиваются ли запросы, выполните следующие действия.
- Отслеживайте метрику сетевых байтов.
- Проверьте следующие поля в трейлерах ответа:
ms-azureml-bandwidth-request-delay-msиms-azureml-bandwidth-response-delay-ms. Значения полей — это задержки (в миллисекундах) регулирования полосы пропускания.
Дополнительные сведения см. в разделе "Проблемы с ограничением пропускной способности".
Метрики в контексте развертывания
Сведения о метриках, доступных в области развертывания, см. в статье "Поддерживаемые метрики для Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments".
Создание панелей мониторинга и оповещений
В Мониторе можно создавать панели мониторинга и оповещения, основанные на метриках.
Создание панелей мониторинга и визуализация запросов
Можно создать пользовательские панели мониторинга, чтобы можно было визуализировать метрики из нескольких источников в портал Azure, включая метрики для конечной точки в Сети. Дополнительные сведения о создании панелей мониторинга и визуализации запросов см. в статье "Создание и совместное использование панелей мониторинга данных Log Analytics " и создание пользовательских панелей ключевых показателей эффективности с помощью Application Insights.
Создание оповещений
Вы также можете создавать пользовательские оповещения, чтобы получать уведомления о важных обновлениях состояния для конечной точки в Сети:
В портал Azure перейдите на страницу метрик и выберите новое правило генерации оповещений.
В окне выбора сигнала выберите сигнал, для которого нужно создать оповещение, а затем нажмите кнопку "Применить".
На странице "Создание правила генерации оповещений " введите пороговое значение и измените другие параметры, которые требуется настроить. Дополнительные сведения о параметрах правила генерации оповещений см. в разделе "Настройка условий правила генерации оповещений". Затем выберите Далее: Действия.
В окне "Выбор групп действий " создайте или выберите группу действий, чтобы указать, что происходит при активации оповещения. Дополнительные сведения см. в разделе "Настройка сведений о правиле генерации оповещений".
Нажмите кнопку "Просмотр и создание", чтобы завершить создание оповещения.
Автоматическое масштабирование на основе метрик
Вы можете настроить развертывания для автоматического масштабирования на основе метрик. Чтобы включить функцию автомасштабирования, используйте пользовательский интерфейс или код.
Варианты для работы с кодом — это интерфейс командной строки Машинное обучение Azure и пакет SDK Машинное обучение Azure для Python. При использовании кода необходимо настроить условия автоматического масштабирования, указав имя REST API метрик.
- Имена метрик конечных точек, используемых в коде, см. в столбце Name в столбце REST API в таблице поддерживаемых метрик Microsoft.MachineLearningServices/workspaces/onlineEndpoints.
- Имена метрик развертывания, используемых в коде, см. в столбце Имя в REST API в поддерживаемых метриках для Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments.
Дополнительные сведения см. в разделе "Автомасштабирование сетевых конечных точек" в Машинное обучение Azure.
Использование журналов
Включите три журнала для сетевых конечных точек:
AmlOnlineEndpointTrafficLog: этот журнал трафика предоставляет способ проверки сведений о запросах к конечной точке. Этот журнал полезен в следующих случаях:
- Ответ на запрос не является 200, и требуется дополнительная информация. Столбец
ResponseCodeReasonв журнале содержит причину. Для получения описания кодов состояния и причин см. коды состояния HTTPS в статье об устранении неполадок с онлайн-узлами. - Вы хотите проверить код ответа и причину отклика вашей модели для запроса. Столбцы
ModelStatusCodeиModelStatusReasonпредоставляют эту информацию. - Вы хотите узнать длительность запроса. Журналы предоставляют разбивку задержки. Эта разбивка показывает общую длительность, длительность запроса, длительность ответа и задержку, вызванную регулированием сети.
- Вы хотите проверить количество последних запросов, которые завершаются успешно и завершаются сбоем. Эти сведения предоставляются в журналах.
- Ответ на запрос не является 200, и требуется дополнительная информация. Столбец
AmlOnlineEndpointConsoleLog: этот журнал содержит инструкции, которые контейнеры записывают в качестве выходных данных в консоль. Этот журнал полезен в следующих случаях:
- Не удается запустить контейнер. Журнал консоли может быть полезен для отладки.
- Вы хотите отслеживать поведение контейнера и убедиться, что все запросы обрабатываются правильно.
- Вы хотите трассировать запрос из точки входа сети в контейнер. Вы можете использовать запрос Log Analytics, который присоединяет идентификатор запроса с информацией из журналов AmlOnlineEndpointConsoleLog и AmlOnlineEndpointTrafficLog.
- Например, необходимо выполнить анализ производительности, чтобы определить время, в течение которого модель занимает обработку каждого запроса.
AmlOnlineEndpointEventLog: этот журнал содержит сведения о событиях жизненного цикла контейнера. В настоящее время журнал содержит сведения о следующих типах событий:
Имя. Сообщение Ретрай Откладывание перезапуска неудавшегося контейнера Извлечено Образ контейнера <IMAGE_NAME> уже присутствует на компьютере Принудительное завершение Контейнер с сервером вывода данных не прошел проверку на живучесть и будет перезапущен. Создано Создан контейнер image-fetcher Создано Создан контейнер inference-server Создано Создан контейнер model-mount ОшибкаLivenessProbe Сбой проверки готовности: <FAILURE_CONTENT> Сбой проверки готовности Сбой пробы готовности: <FAILURE_CONTENT> Запуск Запущен контейнер image-fetcher Запуск Запущен контейнер inference-server Запуск Запущен контейнер model-mount Завершение Остановка контейнера inference-server Принудительное завершение Остановка контейнера model-mount
Включение журналов
Внимание
Ведение журнала использует функцию Log Analytics сервиса Monitor. Если у вас нет рабочей области Log Analytics, ее можно создать, выполнив действия, описанные в разделе "Создание рабочей области".
В портал Azure перейдите в группу ресурсов, содержащую конечную точку, а затем выберите конечную точку.
В разделе "Мониторинг" выберите параметры диагностики и нажмите кнопку "Добавить параметр диагностики".
В окне параметра диагностики введите следующие сведения:
- Рядом с именем параметра диагностики введите имя параметра.
- В разделе "Журналы" выберите категории журналов, которые необходимо включить.
- В разделе "Сведения о назначении" выберите "Отправить в рабочую область Log Analytics", а затем выберите подписку и рабочую область Log Analytics для использования.
Выберите Сохранить.
Внимание
Подключение к рабочей области Log Analytics может занять до часа. Подождите час, прежде чем продолжить действия в следующем разделе.
Журналы запросов
Отправьте запросы оценки в конечную точку, чтобы создать записи в журналах.
Перейдите на портал Azure. Чтобы открыть журналы, используйте один из следующих параметров:
- Перейдите на страницу свойств для вашей веб-конечной точки. В разделе Мониторинг выберите Журналы.
- Перейдите в рабочую область Log Analytics. Слева выберите Логи.
Закройте окно концентратора запросов, которое открывается по умолчанию.
В разделе "Другие" дважды щелкните AmlOnlineEndpointConsoleLog. Если вы не видите AmlOnlineEndpointConsoleLog, введите это значение в поле поиска.
Выберите Выполнить.
Примеры запросов
Вы можете использовать следующие примеры запросов. Чтобы просмотреть запросы, выполните следующие действия.
Сведения о столбцах логов
В следующих таблицах приведены подробные сведения о данных, хранящихся в каждом журнале:
Лог трафика конечной точки AmlOnline
| Свойство | Описание |
|---|---|
| Способ | Метод, запрашивающий клиент. |
| Путь | Путь, который запрашивает клиент. |
| ID подписки | Идентификатор подписки машинного обучения для онлайновой конечной точки. |
| AzureMLWorkspaceId | Идентификатор рабочей области машинного обучения для онлайн-конечной точки. |
| AzureMLWorkspaceName | Имя рабочей области машинного обучения для конечной точки в Сети. |
| Имя конечной точки | Имя онлайн-конечной точки. |
| ИмяРазвертывания | Имя сетевого развертывания. |
| Протокол | Протокол запроса. |
| КодОтвета | Окончательный код ответа, возвращаемый клиенту. |
| ПричинаКодаОтвета | Окончательная причина кода ответа, возвращаемая клиенту. |
| КодСтатусаМодели | Код состояния ответа из модели. |
| ПричинаСостоянияМодели | Причина состояния ответа из модели. |
| Размер нагрузки запроса | Общее количество байтов, полученных от клиента. |
| РазмерОтветногоПакета | Общее количество байтов, отправленных клиенту. |
| ЮзерАгент | Заголовок пользовательского агента запроса, включая примечания, но усечён до максимум 70 символов. |
| XRequestId | Идентификатор запроса, который Машинное обучение Azure создает для внутренней трассировки. |
| XMSClientRequestId | Идентификатор отслеживания, который создает клиент. |
| Общая продолжительность, мс | Длительность в миллисекундах от времени начала запроса до момента отправки последнего байта ответа клиенту. Если клиент отключается, длительность рассчитывается от времени начала до времени отключения клиента. |
| ДлительностьЗапросаМс | Длительность в миллисекундах от времени начала запроса до момента получения последнего байта запроса от клиента. |
| ДлительностьОтветаМс | Длительность в миллисекундах от времени начала запроса до момента, когда первый байт ответа считывается из модели. |
| RequestThrottlingDelayMs | Задержка в миллисекундах при передаче данных запроса из-за ограничения пропускной способности сети. |
| ResponseThrottlingDelayMs (Задержка Ответа в Миллисекундах) | Задержка передачи данных ответа в миллисекундах из-за ограничения сети. |
Консольный журнал AmlOnlineEndpoint
| Свойство | Описание |
|---|---|
| Время генерации | Метка времени в формате UTC времени генерации журнала |
| Наименование операции | Операция, связанная с записью журнала |
| InstanceId | Идентификатор экземпляра, создающего запись журнала |
| ИмяРазвертывания | Имя развертывания, связанного с записью журнала |
| ИмяКонтейнера | Имя контейнера, в котором создается журнал |
| Сообщение | Содержимое журнала |
Журнал событий AmlOnlineEndpoint
| Свойство | Описание |
|---|---|
| Время генерации | Метка времени в формате UTC времени создания журнала |
| Наименование операции | Операция, связанная с записью журнала |
| InstanceId | Идентификатор экземпляра, создающего запись журнала |
| ИмяРазвертывания | Имя развертывания, связанного с записью журнала |
| Имя. | Имя события |
| Сообщение | Содержимое события |
Используйте Application Insights
Курируемые среды включают интеграцию с Application Insights. Благодаря этой интеграции встроенные метрики и журналы отправляются в Application Insights. В результате можно использовать встроенные функции Application Insights для дальнейшего анализа. Примерами этих функций являются динамические метрики, поиск транзакций, представление сбоев и представление производительности.
Дополнительные сведения см. в обзоре Application Insights.
Вы можете включить интеграцию с Application Insights при создании онлайн-развертывания в студии. На странице "Развертывание" в разделе "Диагностика Application Insights" выберите "Включено".
Если включить Application Insights, вы увидите графы мониторов активности высокого уровня для управляемой конечной точки в Сети. В студии перейдите на страницу конечной точки и перейдите на вкладку "Мониторинг ".