Создание оповещений метрик в Azure CLI
В этих примерах создаются мониторы оповещений о метриках в Azure Monitor с помощью команд Azure CLI. В первом примере создается оповещение для виртуальной машины. Вторая команда создает оповещение, которое включает измерение для плана Службы приложений.
Необходимые компоненты
Используйте среду Bash в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Bash в Azure Cloud Shell.
Если вы предпочитаете выполнять справочные команды CLI локально, установите Azure CLI. Если вы работаете в Windows или macOS, Azure CLI можно запустить в контейнере Docker. Дополнительные сведения см. в статье Как запустить Azure CLI в контейнере Docker.
Если вы используете локальную установку, выполните вход в Azure CLI с помощью команды az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. Сведения о других возможностях, доступных при входе, см. в статье Вход с помощью Azure CLI.
Установите расширение Azure CLI при первом использовании, когда появится соответствующий запрос. Дополнительные сведения о расширениях см. в статье Использование расширений с Azure CLI.
Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.
Создание оповещения.
Это оповещение отслеживает существующую виртуальную машину с именем VM07
в группе ресурсов ContosoVMRG
.
Вы можете создать группу ресурсов с помощью команды az group create. Сведения о создании виртуальных машин см. в статьях Создание виртуальной машины Windows с помощью Azure CLI и Создание виртуальной машины Linux с помощью Azure CLI, а также в описании команды az vm create.
# resource group name: ContosoVMRG
# virtual machine name: VM07
# Create scope
scope=$(az vm show --resource-group ContosoVMRG --name VM07 --output tsv --query id)
# Create action
action=$(az monitor action-group create --name ContosoWebhookAction \
--resource-group ContosoVMRG --output tsv --query id \
--action webhook https://alerts.contoso.com usecommonalertschema)
# Create condition
condition=$(az monitor metrics alert condition create --aggregation Average \
--metric "Percentage CPU" --op GreaterThan --type static --threshold 90 --output tsv)
# Create metrics alert
az monitor metrics alert create --name alert-01 --resource-group ContosoVMRG \
--scopes $scope --action $action --condition $condition --description "Test High CPU"
В этом примере используется тип выходных данных tsv
, который не включает нежелательные символы, такие как кавычки. См. дополнительные сведения об эффективном использовании Azure CLI.
Создание оповещения с помощью измерения
В этом примере создается план Службы приложений, а затем для него создается оповещение о метриках. В примере используется измерение для указания того, что все экземпляры плана Службы приложений будут попадать в эту метрику. В примере создаются группа ресурсов и план Службы приложений.
# Create resource group
az group create --name ContosoRG --location eastus2
# Create application service plan
az appservice plan create --resource-group ContosoRG --name ContosoAppServicePlan \
--is-linux --number-of-workers 4 --sku S1
# Create scope
scope=$(az appservice plan show --resource-group ContosoRG --name ContosoAppServicePlan \
--output tsv --query id)
# Create dimension
dim01=$(az monitor metrics alert dimension create --name Instance --value * --op Include --output tsv)
# Create condition
condition=$(az monitor metrics alert condition create --aggregation Average \
--metric CpuPercentage --op GreaterThan --type static --threshold 90 \
--dimension $dim01 --output tsv)
Чтобы просмотреть список возможных метрик, выполните команду az monitor metrics list-definitions. Параметр --output
выводит значения в удобном для чтения формате.
az monitor metrics list-definitions --resource $scope --output table
# Create metrics alert
az monitor metrics alert create --name alert-02 --resource-group ContosoRG \
--scopes $scope --condition $condition --description "Service Plan High CPU"
Очистка развертывания
Если вы создали группу ресурсов для тестирования этих команд, можно удалить ее и все ее содержимое с помощью команды az group delete.
az group delete --name ContosoVMRG
az group delete --name ContosoRG
Если вы использовали существующие ресурсы, которые следует оставить, используйте команду az monitor metrics alert delete, чтобы удалить тестовые оповещения.
az monitor metrics alert delete --name alert-01
az monitor metrics alert delete --name alert-02
Команды Azure CLI, используемые в этой статье
В рамках этой статьи использованы следующие команды Azure CLI.
- az appservice plan create
- az appservice plan show
- az group create
- az group delete
- az monitor action-group create
- az monitor metrics alert condition create
- az monitor metrics alert create
- az monitor metrics alert delete
- az monitor metrics alert dimension create
- az monitor metrics list-definitions
- az vm show