Команда Get-AzFunctionApp не работает в Runbook службы автоматизации Azure.

Я создал Runbook и добавил ниже командлет

   Get-AzFunctionApp  | Stop-AzFunctionApp

я получаю ошибку ниже

Термин «Get-AzFunctionApp» не распознается как имя командлета,

Я импортировал все указанные ниже модули, но не повезло

введите здесь описание изображения

После добавления «Az.Functions» я получаю сообщение об ошибке ниже

Не удалось проверить аргумент параметра «SubscriptionId». Аргумент нулевой или пустой. Укажите аргумент, который не является нулевым или пустым, а затем повторите команду. (Аргумент имеет значение null или пуст. Укажите аргумент, который не является значением null или пуст, а затем повторите команду.)


person kudlatiger    schedule 12.02.2021    source источник
comment
В заголовке упоминается, что Get-AzWebApp не работает, но в вопросе вы говорите, что Get-AzFunctionApp не распознается, не могли бы вы уточнить это более четко?   -  person Ivan Yang    schedule 12.02.2021
comment
обновил название   -  person kudlatiger    schedule 12.02.2021


Ответы (2)


Командлет Get-AzFunctionApp / Stop-AzFunctionApp включен в этот модуль: Az.Functions .

Пожалуйста, импортируйте этот модуль, и тогда функции, связанные с работой, будут работать.

Вот пример (обратите внимание, добавьте параметр -Force для Stop-AzFunctionApp), он работает в соответствии с моим тестированием:

$Conn = Get-AutomationConnection -Name AzureRunAsConnection
Connect-AzAccount -ServicePrincipal -Tenant $Conn.TenantID -ApplicationId $Conn.ApplicationID -CertificateThumbprint $Conn.CertificateThumbprint

Get-AzFunctionApp -ResourceGroupName xxx | Stop-AzFunctionApp -Force
person Ivan Yang    schedule 12.02.2021
comment
Пожалуйста, смотрите обновленный вопрос - person kudlatiger; 12.02.2021
comment
хорошо, может быть, мне не хватает Connection , может потребоваться AzureRunAsConnection - person kudlatiger; 12.02.2021
comment
@kudlatiger, пожалуйста, не забудьте также добавить параметр -Force для Stop-AzFunctionApp, иначе вам будет предложено выбрать yes или no для остановки каждой функции. - person Ivan Yang; 12.02.2021
comment
@kudlatiger обновил ответ рабочим примером, дайте мне знать, если у вас все еще есть проблемы с этим. - person Ivan Yang; 12.02.2021
comment
работает как шарм. - person kudlatiger; 12.02.2021
comment
Как заставить все веб-приложения запускаться и останавливаться в цикле? - person kudlatiger; 12.02.2021
comment
@kudlatiger есть ли в веб-приложениях лазурная функция? - person Ivan Yang; 12.02.2021
comment
Давайте продолжим обсуждение в чате. - person kudlatiger; 12.02.2021
comment
Я начал получать сообщение об ошибке. Переданный аргумент не сериализуем. - person kudlatiger; 16.02.2021
comment
@kudlatiger, пожалуйста, добавьте скриншот или подробную информацию о команде/ошибках. Могу завтра посмотреть :) - person Ivan Yang; 16.02.2021
comment
размещено здесь переданный аргумент не является сериализуемой ошибкой при попытке остановить ap"> stackoverflow.com/questions/66222100/ - person kudlatiger; 16.02.2021

Судя по опубликованному вами снимку экрана, вам не хватает Az.Functions, содержащий командлеты Get-AzFunctionApp и Stop-AzFunctionApp.

Чтобы импортировать модуль Az.Functions в свою учетную запись службы автоматизации, выполните следующие действия:

  1. В своей учетной записи службы автоматизации в разделе Общие ресурсы выберите Модули.
  2. Выберите Просмотреть галерею.
  3. В строке поиска введите имя модуля (Az.Functions).
  4. На странице модуля PowerShell выберите Импорт, чтобы импортировать модуль в свою учетную запись службы автоматизации.

Модуль импорта

Вы также можете импортировать модуль через галерею PowerShell. Перейдите на вкладку Azure Automation и выберите Развернуть в Azure Automation здесь: Az.Functions.

person Bhargavi Annadevara    schedule 12.02.2021