Hantera Azure Functions i Azure Container Apps

Du kan hantera dina distribuerade funktioner i Azure Container Apps med hjälp av Azure CLI. Följande kommandon hjälper dig att lista, inspektera och interagera med funktionerna som körs i din containerbaserade miljö.

Anmärkning

När du hanterar scenarier med multirevision lägger du till parametern --revision <REVISION_NAME> i kommandot för att rikta in dig på en specifik revision.

Lista över funktioner

Visa alla funktioner som distribueras i containerappen:

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

Visa funktionsinformation

Få detaljerad information om en specifik funktion:

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

Övervaka funktionsanrop

Det är viktigt att övervaka funktionsappen för att förstå dess prestanda och diagnostisera problem. Följande kommandon visar hur du hämtar funktions-URL:er, utlöser anrop och visar detaljerade telemetri- och anropssammanfattningar med hjälp av Azure CLI. Innan du anropar spårningarna anropar du funktionen några gånger med hjälp curl -X POST "fqdn/api/HttpExample"av .

  1. Om du vill visa anropsspårningar hämtar du detaljerade spårningar av funktionsanrop:

    az containerapp function invocations traces \
      --name $CONTAINERAPP_NAME \
      --resource-group $RESOURCE_GROUP \
      --function-name <FUNCTIONS_APP_NAME> \
      --timespan 5h \
      --limit 3
    
  2. Visa en anropssammanfattning för att granska lyckade och misslyckade anrop.

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

Hantera funktionsnycklar

Azure Functions använder nycklar för autentisering och auktorisering. Du kan hantera följande olika typer av nycklar:

  • Värdnycklar: Åtkomst till alla funktioner i appen
  • Huvudnycklar: Ge administrativ åtkomst
  • Systemnycklar: Används av Azure-tjänster
  • Funktionsnycklar: Åtkomst till specifika funktioner

Följande kommandon visar hur du hanterar nycklar för värdmaskinen. Om du vill köra samma kommando för en specifik Functions-app lägger du till parametern i --function-name <FUNCTIONS_APP_NAME> kommandot.

Visa en lista med nycklar

Använd följande kommandon för att visa en lista över värdnivå- och funktionsspecifika nycklar för dina Azure Functions som körs i Container Apps.

Anmärkning

Låt minst en replik köras så att följande nyckelhanteringskommandon fungerar.

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

Visa en specifik nyckel

Visa värdet för en specifik nyckel på värdnivå för funktionsappen med hjälp av följande kommando:

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

Ange en nyckel

Ange en specifik nyckel på värdnivå för funktionsappen med hjälp av följande kommando:

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

Nyckelhantering med Azure Key Vault

När du använder Azure Key Vault för att lagra hemligheter för Azure Functions på Container Apps, fungerar genereringen av nycklar annorlunda än i traditionella Functions-hostingmiljöer.

Som standard:

  • Funktionen värd skapar inte automatiskt nycklar i Key Vault när den startar.

  • Värden för Functions hämtar och använder nycklarna om de redan finns i Key Vault.

  • Functions-värden startar framgångsrikt även utan nycklar, och nyckelsynkroniseringen slutförs normalt.

Därför körs programmet korrekt, men nycklar på värdnivå visas inte i Key Vault om du inte skapar dem manuellt.

Generera nycklar manuellt

Om du vill utlösa nyckelskapande i Azure Key Vault anropar du slutpunkten för Functions-hantering med hjälp av följande CLI-kommando.

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