Использование анализа изменений приложений в Azure Monitor (Предварительная версия)

Хотя стандартные решения по мониторингу могут предупредить о неполадках в работе сайта, сбоях или отказе компонентов, они часто не объясняют причины. Например, ваш сайт работал пять минут назад, и теперь он нарушен. Что изменилось за последние пять минут?

Мы разработали анализ изменений приложений, чтобы ответить на этот вопрос в Azure Monitor.

создание Graph ресурсов Azure, анализ изменений:

  • Предоставляет аналитические сведения об изменениях в приложении Azure.
  • Повышение наблюдаемости.
  • Сокращает среднее время восстановления (MTTR).

Важно!

Анализ изменений сейчас находится на этапе предварительной версии. Эта версия:

  • Предоставляется без соглашения об уровне обслуживания.
  • Не рекомендуется для рабочих нагрузок в рабочей среде.
  • Содержит неподдерживаемые функции и может иметь ограниченные возможности.

Дополнительные сведения см. в статье Дополнительные условия использования Предварительных версий Microsoft Azure.

Обзор

Анализ изменений обнаруживает различные типы изменений, от уровня инфраструктуры до развертывания приложений. Анализ изменений — это поставщик ресурсов Azure уровня подписки, который:

  • Проверяет изменения ресурсов в подписке.
  • Предоставляет данные для различных диагностических средств, которые помогают пользователям понять, какие изменения могут вызвать проблемы.

На следующей схеме показана архитектура анализа изменений:

Architecture diagram of how Change Analysis gets change data and provides it to client tools

Поддерживаемые типы ресурсов

Служба анализа изменений в приложениях поддерживает изменения на уровне свойств ресурсов во всех типах ресурсов Azure, включая общие ресурсы, такие как:

  • Виртуальная машина
  • Набор масштабирования виртуальных машин
  • Служба приложений
  • Служба Azure Kubernetes
  • функции Azure;
  • Сетевые ресурсы:
    • Группа безопасности сети
    • Виртуальная сеть
    • Шлюз приложений и т. д.
  • Службы данных:
    • Память
    • SQL
    • кэш Redis;
    • Cosmos DB и т. д.

Источники данных

Запросы на анализ изменений приложений для:

  • Azure Resource Manager отслеживанию свойств.
  • Конфигурации с прокси-сервером.
  • Изменения веб-приложения в гостевой системе.

В ходе анализа изменений также отслеживаются изменения зависимостей ресурсов для диагностики и отслеживания комплексного приложения.

Изменения отслеживаемых свойств Azure Resource Manager

С помощью Azure Resource Graphанализ изменений позволяет фиксировать, как ресурсы Azure, на которых размещены приложения, изменились с течением времени. Можно обнаружить следующие отслеживании параметров:

  • Управляемые удостоверения
  • Обновление ОС платформы
  • Имена узлов

Изменения прокси-параметров Azure Resource Manager

в отличие от Graph ресурсов Azure, анализ изменений безопасно запрашивает и вычислит правила IP-конфигурации, параметры TLS и версии расширений, чтобы предоставить дополнительные сведения об изменениях в приложении.

Изменения в развертывании и конфигурации веб-приложения (гостевые изменения)

Каждые 4 часа анализ изменений захватывает развертывание и состояние конфигурации приложения. Например, он может обнаружить изменения в переменных среды приложения. Средство вычислит различия и представит изменения.

В отличие от Azure Resource Manager изменения, сведения об изменении развертывания кода могут быть недоступны сразу же в средстве анализа изменений. Чтобы просмотреть последние изменения в средстве анализа изменений, нажмите Обновить.

Screenshot of the Scan changes now button

Сейчас поддерживаются все текстовые файлы в корне сайта wwwroot со следующими расширениями:

  • *.json
  • *.xml
  • *.ini
  • *.yml
  • *.config
  • *.properties
  • *.html
  • *.cshtml
  • *.js
  • requirements.txt
  • Gemfile
  • Gemfile.lock
  • config.gemspec

Изменения зависимостей

Изменения зависимостей ресурсов также могут вызвать проблемы в ресурсе. Например, если веб-приложение вызывает кэш Redis, номер SKU кэша Redis может повлиять на производительность веб-приложения.

Другой пример: Если порт 22 был закрыт в группе безопасности сети виртуальной машины, это вызовет ошибки подключения.

Навигатор по диагностике и устранению проблем веб-приложений (предварительная версия)

Для обнаружения изменений в зависимостях служба анализа изменений проверяет запись DNS веб-приложения. Таким образом, она определяет изменения во всех компонентах приложений, которые могут вызвать проблемы.

В настоящее время в Навигаторе по диагностике и устранению проблем веб-приложений (предварительная версия) поддерживаются следующие зависимости:

  • Веб-приложения
  • Хранилище Azure
  • Azure SQL

Анализ изменений обнаруживает связанные ресурсы. Ниже приведены распространенные примеры.

  • Группа безопасности сети
  • Виртуальная сеть
  • Шлюз приложений
  • Load Balancer, связанные с виртуальной машиной.

Сетевые ресурсы обычно подготавливаются в той же группе ресурсов, что и ресурсы, использующие ее. Отфильтруйте изменения по группе ресурсов, чтобы отобразить все изменения для виртуальной машины и связанных с ней сетевых ресурсов.

Screenshot of Networking changes

Включение службы анализа изменений в приложениях

Служба анализа изменений приложений:

  • Вычисляет и объединяет данные изменений из источников данных, упомянутых ранее.
  • Предоставляет набор аналитик для пользователей:
    • Можно легко перемещаться по всем изменениям ресурсов.
    • Выявление соответствующих изменений в контексте устранения неполадок или мониторинга.

Необходимо зарегистрировать Microsoft.ChangeAnalysis поставщик ресурсов с подпиской Azure Resource Manager, чтобы сделать доступными данные о смене свойств и параметров прокси-сервера. Microsoft.ChangeAnalysisРесурс автоматически регистрируется как вы:

  • Введите средство диагностики и устранения неполадок веб-приложений или
  • Откройте автономную вкладку анализ изменений.

Для гостевых изменений в веб-приложении требуется отдельное включение для сканирования файлов кода в рамках веб-приложения. Дополнительные сведения см. в статье анализ изменений в разделе Средство диагностики и устранения проблем .

Затраты

Анализ изменений приложений — это бесплатная служба. После включения средство анализа изменений Диагностика и решение проблем не выполняет следующие действия.

  • Вынести затраты на выставление счетов по подпискам.
  • Повлиять на производительность при проверке изменений свойств ресурсов Azure.

Включение крупномасштабного анализа изменений в гостевых файлах и переменных среды веб-приложений

Если ваша подписка включает несколько веб-приложений, включение службы на уровне веб-приложения будет неэффективным. Вместо этого выполните следующий скрипт, чтобы включить все веб-приложения в подписке.

Предварительные требования

Модуль Az для PowerShell. Следуйте инструкциям по установке модуля Azure PowerShell

Выполните следующий сценарий:

# Log in to your Azure subscription
Connect-AzAccount

# Get subscription Id
$SubscriptionId = Read-Host -Prompt 'Input your subscription Id'

# Make Feature Flag visible to the subscription
Set-AzContext -SubscriptionId $SubscriptionId

# Register resource provider
Register-AzResourceProvider -ProviderNamespace "Microsoft.ChangeAnalysis"

# Enable each web app
$webapp_list = Get-AzWebApp | Where-Object {$_.kind -eq 'app'}
foreach ($webapp in $webapp_list)
{
    $tags = $webapp.Tags
    $tags[“hidden-related:diagnostics/changeAnalysisScanEnabled”]=$true
    Set-AzResource -ResourceId $webapp.Id -Tag $tags -Force
}

Дальнейшие действия