Gerenciar o Azure Functions em Aplicativos de Contêiner do Azure

Você pode gerenciar suas funções implantadas nos Aplicativos de Contêiner do Azure usando a CLI do Azure. Os comandos a seguir ajudam você a listar, inspecionar e interagir com as funções em execução em seu ambiente em contêineres.

Observação

Ao lidar com cenários de multirevisão, adicione o parâmetro --revision <REVISION_NAME> ao seu comando para direcionar uma revisão específica.

Listar funções

Exiba todas as funções implantadas em seu aplicativo de contêiner:

# List all functions
az containerapp function list \
  --resource-group $RESOURCE_GROUP \
  --name $CONTAINERAPP_NAME

Mostrar detalhes da função

Obtenha informações detalhadas sobre uma função específica:

az containerapp function show \
  --resource-group $RESOURCE_GROUP \
  --name $CONTAINERAPP_NAME \
  --function-name <FUNCTIONS_APP_NAME>

Monitorar invocações de função

Monitorar seu aplicativo de funções é essencial para entender seu desempenho e diagnosticar problemas. Os comandos a seguir mostram como recuperar URLs de função, disparar invocações e exibir resumos detalhados de telemetria e invocação usando a CLI do Azure. Antes de chamar os rastreamentos, invoque a função algumas vezes usando curl -X POST "fqdn/api/HttpExample".

  1. Para exibir rastreamentos de invocação, obtenha rastreamentos detalhados de invocações de função:

    az containerapp function invocations traces \
      --name $CONTAINERAPP_NAME \
      --resource-group $RESOURCE_GROUP \
      --function-name <FUNCTIONS_APP_NAME> \
      --timespan 5h \
      --limit 3
    
  2. Visualizar um resumo da invocação para examinar invocações bem-sucedidas e falhas.

    az containerapp function invocations summary \
      --name $CONTAINERAPP_NAME \
      --resource-group $RESOURCE_GROUP \
      --function-name <FUNCTIONS_APP_NAME> \
      --timespan 5h
    

Gerenciar chaves de função

O Azure Functions usa chaves para autenticação e autorização. Você pode gerenciar os seguintes tipos diferentes de chaves:

  • Chaves de host: acessar qualquer função no aplicativo
  • Chaves mestras: fornecer acesso administrativo
  • Chaves do sistema: usadas pelos serviços do Azure
  • Chaves de função: acessar funções específicas

Os comandos a seguir mostram como gerenciar chaves para o host. Para executar o mesmo comando para um aplicativo específico do Functions, adicione o --function-name <FUNCTIONS_APP_NAME> parâmetro ao seu comando.

Listar chaves

Use os comandos a seguir para listar chaves específicas de nível de host e de função para o Azure Functions em execução nos Aplicativos de Contêiner.

Observação

Mantenha pelo menos uma réplica em execução para que os comandos de gerenciamento de chaves a seguir funcionem.

az containerapp function keys list \
  --resource-group $RESOURCE_GROUP \
  --name $CONTAINERAPP_NAME \
  --key-type hostKey

Mostrar uma chave específica

Mostre o valor de uma chave de nível de host específica para seu aplicativo de funções usando o seguinte comando:

az containerapp function keys show \
  --resource-group $RESOURCE_GROUP \
  --name $CONTAINERAPP_NAME \
  --key-name <KEY_NAME> \
  --key-type hostKey

Definir uma chave

Defina uma chave de nível de host específica para seu aplicativo de funções usando o seguinte comando:

az containerapp function keys set \
  --resource-group $RESOURCE_GROUP \
  --name $CONTAINERAPP_NAME \
  --key-name <KEY_NAME> \
  --key-value <KEY_VALUE> \
  --key-type hostKey

Gerenciamento de chaves com o Azure Key Vault

Quando você usa o Azure Key Vault para armazenar segredos para o Azure Functions em Aplicativos de Contêiner, a geração de chaves funciona de forma diferente da hospedagem tradicional do Functions.

Por padrão:

  • O host do Functions não cria chaves automaticamente no Key Vault quando é iniciado.

  • O host do Functions recupera e usa chaves se elas já existem no Key Vault.

  • O host do Functions é iniciado com êxito mesmo sem chaves e a sincronização de chaves é concluída normalmente.

Como resultado, seu aplicativo é executado corretamente, mas as chaves no nível do host não aparecem no Key Vault, a menos que você as crie manualmente.

Gerar chaves manualmente

Para acionar a geração de chaves no Azure Key Vault, chame o endpoint de gerenciamento do Functions usando o seguinte comando CLI.

az containerapp function keys list \
 -n <CONTAINER_APP_NAME> \
 -g <RESOURCE_GROUP> \
 --key-type hostKey