Delen via


Een door Azure Cosmos DB geactiveerde functie maken

Meer informatie over het maken van een functie in Azure Portal die wordt geactiveerd wanneer gegevens worden toegevoegd aan of gewijzigd in Azure Cosmos DB. Zie Azure Cosmos DB: Serverless database computing using Azure Functions (Azure Cosmos DB: database berekenen zonder server met Azure Functions) voor meer informatie over Azure Cosmos DB.

Notitie

Bewerken in de portal wordt alleen ondersteund voor JavaScript-, PowerShell- en C#-scriptfuncties. Python-portalbewerking wordt alleen ondersteund wanneer het wordt uitgevoerd in het verbruiksabonnement. Als u een C#-script-app wilt maken die ondersteuning biedt voor het bewerken in de portal, moet u een runtimeversie kiezen die ondersteuning biedt voor het in-procesmodel.

Indien mogelijk moet u uw functies lokaal ontwikkelen.

Zie Ontwikkelingsbeperkingen in Azure Portal voor meer informatie over de beperkingen voor het bewerken van functiecode in Azure Portal.

Vereisten

nl-NL: Om deze zelfstudie te voltooien:

  • Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.

Notitie

Azure Cosmos DB-bindingen worden alleen ondersteund voor gebruik met Azure Cosmos DB voor NoSQL. Ondersteuning voor Azure Cosmos DB voor Table wordt geleverd met behulp van de Table Storage-bindingen, te beginnen met extensie 5.x. Voor alle andere Azure Cosmos DB-API's hebt u toegang tot de database vanuit uw functie met behulp van de statische client voor uw API, waaronder Azure Cosmos DB voor MongoDB, Azure Cosmos DB voor Cassandra en Azure Cosmos DB voor Apache Gremlin.

Aanmelden bij Azure

Meld u met uw Azure-account aan bij Azure Portal.

Een Azure Cosmos DB-account maken

U moet een Azure Cosmos DB-account hebben dat gebruikmaakt van de SQL-API voordat u de trigger maakt.

  1. Selecteer vanuit het menu van Azure Portal of op de startpagina de optie Een resource maken.

  2. Zoek naar Azure Cosmos DB. Selecteer Azure Cosmos DB>.

  3. Selecteer op de pagina Een Azure Cosmos DB-account maken de optie Aanmaken in de sectie Azure Cosmos DB for NoSQL.

    Azure Cosmos DB biedt verschillende API's:

    • NoSQL, voor documentgegevens
    • PostgreSQL
    • MongoDB voor documentgegevens
    • Apache Cassandra
    • Tabel
    • Apache Gremlin voor grafiekgegevens

    Zie Welkom bij Azure Cosmos DB voor meer informatie over de API voor NoSQL.

  4. Op de pagina Azure Cosmos DB-account maken, voert u de basisinstellingen in voor het nieuwe Azure Cosmos DB-account.

    Instelling Waarde Beschrijving
    Abonnement Naam van het abonnement Selecteer het Azure-abonnement dat u wilt gebruiken voor dit Azure Cosmos DB-account.
    Resourcegroep Naam van de resourcegroep Selecteer een resourcegroep of selecteer Nieuwe maken en voer vervolgens een unieke naam in voor de nieuwe resourcegroep.
    Accountnaam Een unieke naam Voer een naam in om uw Azure Cosmos DB-account te identificeren. Gebruik een unieke naam omdat documents.azure.com is toegevoegd aan de naam die u hebt opgegeven om uw URI te maken. De naam mag alleen kleine letters, cijfers en het afbreekstreepje (-) bevatten. Het moet 3-44 tekens zijn.
    Locatie De regio het dichtst bij uw gebruikers Selecteer een geografische locatie waar u het Azure Cosmos DB-account wilt hosten. Gebruik de locatie die zich het dichtst bij uw gebruikers bevindt, zodat ze de snelst mogelijke toegang tot de gegevens hebben.
    Capaciteitsmodus Ingerichte doorvoer of serverloos Selecteer Ingerichte doorvoer om een account te maken in de modus Ingerichte doorvoer. Selecteer Serverloos om een account te maken in de modus serverloos.
    Gratis tier-korting van Azure Cosmos DB toepassen Toepassen of niet toepassen Met de gratis laag van Azure Cosmos DB krijgt u de eerste 1000 RU/s en 25 GB opslagruimte gratis in een account. Meer informatie over de gratis laag.
    Totale accountdoorvoer beperken Geselecteerd of niet Beperk de totale hoeveelheid doorvoer die voor dit account kan worden ingericht. Deze limiet voorkomt onverwachte kosten voor geprovisioneerde doorvoer. U kunt deze limiet bijwerken of verwijderen nadat uw account is gemaakt.

    U kunt maximaal één gratis Azure Cosmos DB-account per Azure-abonnement hebben en u moet zich aanmelden bij het maken van het account. Als u de optie voor het toepassen van de korting op de gratis laag niet ziet, is er al een ander account in het abonnement ingeschakeld met de gratis laag.

    Schermafbeelding weergeeft de pagina voor het aanmaken van een Azure Cosmos DB-account.

    Notitie

    De volgende opties zijn niet beschikbaar als u Serverloos als Capaciteitsmodus selecteert:

    • Gratis Tierkorting toepassen
    • Totale accountdoorvoer beperken
  5. Configureer op het tabblad Globale distributie de volgende details. U kunt de standaardwaarden voor deze quickstart behouden:

    Instelling Waarde Beschrijving
    Georedundantie Uitschakelen Schakel globale distributie voor uw account in of uit door uw regio te koppelen met een koppelingsregio. U kunt later meer regio's aan uw account toevoegen.
    Schrijven in meerdere regio's Uitschakelen Dankzij de schrijfmogelijkheden in meerdere regio's kunt u wereldwijd profiteren van de geconfigureerde doorvoer voor uw databases en containers.
    Beschikbaarheidszones Uitschakelen Met beschikbaarheidszones kunt u de beschikbaarheid en tolerantie van uw toepassing verder verbeteren.

    Notitie

    De volgende opties zijn niet beschikbaar als u Serverloos selecteert als capaciteitsmodus op de vorige pagina Basisbeginselen:

    • Geografische redundantie
    • Schrijven voor meerdere regio's
  6. U kunt desgewenst meer details configureren op de volgende tabbladen:

    • Netwerken. Toegang configureren vanuit een virtueel netwerk.
    • Back-upbeleid. Configureer periodiek of doorlopend back-upbeleid.
    • Versleuteling. Gebruik een door de service beheerde sleutel of een door de klant beheerde sleutel.
    • Tags. Tags zijn naam/waarde-paren waarmee u resources kunt categoriseren en een geconsolideerde facturering kunt weergeven. Hiervoor past u dezelfde tag toe op meerdere resources en resourcegroepen.
  7. Selecteer Controleren + maken.

  8. Controleer de accountinstellingen en selecteer vervolgens Maken. Het duurt een paar minuten om het account te maken. Wacht tot de portal-pagina Uw implementatie is voltooid weergeeft.

    Schermopname die laat zien dat uw implementatie is voltooid.

  9. Selecteer Ga naar resource om naar de Azure Cosmos DB-accountpagina te gaan.

    Schermopname van de azure Cosmos DB-accountpagina.

Een functie-app maken in Azure

  1. Selecteer vanuit het menu van Azure Portal of op de startpagina de optie Een resource maken.

  2. Selecteer Functie-app op de pagina Nieuw.

  3. Selecteer onder Selecteer een hostingoptie de optie VerbruikSelecteer om uw app te maken in het standaard Verbruik-plan. In deze serverloze hostingoptie betaalt u alleen voor de tijd dat uw functies worden uitgevoerd. Premium-abonnement biedt ook dynamische schaalvergroting. Als u een App Service-plan gebruikt, moet u het schalen van uw functie-app beheren.

  4. Op de pagina Basics gebruikt u de instellingen voor de functie-app zoals in de volgende tabel wordt vermeld:

    Instelling Voorgestelde waarde Beschrijving
    Abonnement Uw abonnement Het abonnement waaronder u uw nieuwe functie-app maakt.
    Resourcegroep myResourceGroup Naam voor de nieuwe resourcegroep waarin u uw functie-app maakt. U moet een nieuwe resourcegroep maken omdat er bekende beperkingen zijn bij het maken van nieuwe functie-apps in een bestaande resourcegroep.
    Naam van de functie-app Wereldwijd unieke naam Naam waarmee uw nieuwe functie-app wordt aangeduid. Geldige tekens zijn a-z (niet hoofdlettergevoelig), 0-9 en -.
    Runtime stack Voorkeurstaal Kies een runtime die uw favoriete functieprogrammeertaal ondersteunt. Bewerken in de portal is alleen beschikbaar voor JavaScript-, PowerShell-, Python-, TypeScript- en C#-script.
    Als u een C#-script-app wilt maken die ondersteuning biedt voor het bewerken in de portal, moet u een runtimeversie kiezen die ondersteuning biedt voor het in-procesmodel.
    C#-klassebibliotheek en Java-functies moeten lokaal worden ontwikkeld.
    Versie Versienummer Kies de versie van uw geïnstalleerde runtime.
    Regio Voorkeursregio Selecteer een regio in de buurt of in de buurt van andere services waartoe uw functies toegang hebben.
    Besturingssysteem Windows Een besturingssysteem is vooraf geselecteerd op basis van de selectie van uw runtimestack, maar u kunt de instelling indien nodig wijzigen. Bewerken in de portal wordt momenteel alleen ondersteund in Windows.
  5. Accepteer de standaardopties op de resterende tabbladen, waaronder het standaardgedrag van het maken van een nieuw opslagaccount op het tabblad Storage en een nieuw Application Insight-exemplaar op het tabblad Bewaking . U kunt er ook voor kiezen om een bestaand opslagaccount of Application Insights-exemplaar te gebruiken.

  6. Selecteer Beoordelen en maken om de gekozen app-configuratie te controleren en selecteer vervolgens Maken om de functie-app in te richten en te implementeren.

  7. Selecteer het Meldingspictogram in de rechterbovenhoek van de portal en let op het bericht Implementatie voltooid.

  8. Selecteer Open resource om uw nieuwe functie-app te bekijken. U kunt ook Vastzetten op het dashboard selecteren. Vastmaken maakt het gemakkelijker om terug te keren naar deze functieapp-bron op uw dashboard.

    Schermopname van de implementatiemelding.

Vervolgens maakt u een functie in de nieuwe functie-app.

Een Azure Cosmos DB-trigger maken

  1. Selecteer in uw functie-app het Overzicht en klik vervolgens op + Maken onder Functies. Als u geen knop Maken ziet, moet u in plaats daarvan uw Azure Cosmos DB-trigger toevoegen aan uw lokale codeproject en vervolgens opnieuw implementeren in Azure. Raadpleeg Code and test Azure Functions lokaal voor meer informatie.

  2. Schuif onder Selecteer een sjabloon omlaag en kies de Azure Cosmos DB-triggersjabloon .

  3. Configureer in sjabloondetails de nieuwe trigger met de instellingen die in deze tabel zijn opgegeven en selecteer vervolgens Maken:

    Instelling Voorgestelde waarde Beschrijving
    Nieuwe functie Accepteer de standaardnaam De naam van de functie.
    Verbinding met het Azure Cosmos DB-account Accepteer de standaard nieuwe naam Selecteer Nieuw, het databaseaccount dat u eerder hebt gemaakt en klik vervolgens op OK. Met deze actie maakt u een toepassingsinstelling voor uw accountverbinding. Deze instelling wordt gebruikt door het verbindingsmechanisme om verbinding te maken met de database.
    Databasenaam Opdrachten De naam van de database die de verzameling bevat die moet worden bewaakt.
    Naam van verzameling Artikelen De naam van de verzameling die moet worden bewaakt.
    Verzamelingsnaam voor huurovereenkomsten leasecontracten De naam van de verzameling voor het opslaan van de leases.
    Leaseverzameling maken indien deze nog niet bestaat Ja Controleert of de leaseverzameling bestaat en maakt deze automatisch.

    Azure maakt de door Azure Cosmos DB geactiveerde functie op basis van de opgegeven waarden.

  4. Als u de functiecode op basis van sjablonen wilt weergeven, selecteert u Code + Test.

    Azure Cosmos DB-functie-sjabloon in C#

    Met deze functiesjabloon worden het aantal documenten en de eerste document-id naar de logboeken geschreven.

Vervolgens maakt u verbinding met uw Azure Cosmos DB-account en maakt u de Items container in de Tasks database.

De container Items maken

  1. Open een tweede exemplaar van Azure Portal op een nieuw tabblad in de browser.

  2. Vouw aan de linkerkant van de portal de pictogrammenbalk uit, typ cosmos in het zoekveld en selecteer Azure Cosmos DB.

    Zoek naar de Azure Cosmos DB-service

  3. Kies uw Azure Cosmos DB-account en selecteer vervolgens Data Explorer.

  4. Onder SQL API, kies de Takendatabase en selecteer Nieuwe container.

    Een container maken

  5. In Container toevoegen, gebruik de instellingen die worden weergegeven in de tabel onder de afbeelding.

    De container Taken definiëren

    Instelling Voorgestelde waarde Beschrijving
    Database-id Opdrachten De naam voor de nieuwe database. Dit moet overeenkomen met de naam die is gedefinieerd in de functiebinding.
    Container-id Artikelen De naam voor de nieuwe container. Dit moet overeenkomen met de naam die is gedefinieerd in de functiebinding.
    Partitiesleutel /categorie Een partitiesleutel waarmee gegevens gelijkmatig worden gedistribueerd naar elke partitie. Het selecteren van de juiste partitiesleutel is belangrijk bij het maken van een krachtige container.
    Doorvoer 400 RU Gebruik de standaardwaarde. U kunt de doorvoer later opschalen als u de latentie wilt beperken.
  6. Klik op OK om de container Items te maken. Het kan even duren voordat de container is gemaakt.

Nadat de container die is opgegeven in de functiebinding bestaat, kunt u de functie testen door items toe te voegen aan deze nieuwe container.

De functie testen

  1. Vouw de nieuwe Items container uit in Data Explorer, kies Items, en selecteer Nieuw Item.

    Een item maken in de container Items

  2. Vervang de inhoud van het nieuwe item door de volgende inhoud en kies Opslaan.

    {
        "id": "task1",
        "category": "general",
        "description": "some task"
    }
    
  3. Schakel over naar het eerste browsertabblad dat de functie in de portal bevat. Vouw de functielogboeken uit en controleer of de functie is geactiveerd met behulp van het nieuwe document. U ziet nu dat de waarde voor de task1-document-id naar de logboeken is geschreven.

    Bekijk het bericht in de logboeken.

  4. (Optioneel) Ga terug naar het document, breng een wijziging aan en klik op Bijwerken. Ga vervolgens terug naar de functielogboeken en controleer of met de update ook de functie is geactiveerd.

Hulpmiddelen opschonen

Andere Quick Starts in deze verzameling zijn op deze Quick Start gebaseerd. Als u van plan bent om aan de slag te gaan met verdere quickstarts, handleidingen of met een van de services die u in deze quickstart hebt gemaakt, maak dan de bronnen niet schoon.

Resources verwijst in Azure naar functie-apps, functies, opslagaccounts,enzovoort. Deze zijn gegroepeerd in resourcegroepen. U kunt alle resources in een groep verwijderen door de groep zelf te verwijderen.

U hebt middelen gecreëerd om deze snelstartgidsen te voltooien. Mogelijk wordt u gefactureerd voor deze resources, afhankelijk van uw accountstatus en serviceprijzen. Als u de resources niet meer nodig hebt, kunt u ze als volgt verwijderen:

  1. Ga in Azure Portal naar de pagina Resourcegroep.

    Als u naar die pagina wilt gaan op de pagina van de functie-app, selecteert u het tabblad Overzicht en selecteert u vervolgens de koppeling onder Resourcegroep.

    Schermopname van het selecteren van de resourcegroep die u wilt verwijderen van de pagina van de functie-app.

    Om naar die pagina te gaan, selecteer Resourcegroepen en vervolgens de resourcegroep die u voor dit artikel gebruikt hebt.

  2. Bekijk op de pagina Resourcegroep de lijst met opgenomen resources, en controleer of dit de resources zijn die u wilt verwijderen.

  3. Selecteer Resourcegroep verwijderen en volg de instructies.

    Het verwijderen kan enkele minuten duren. Wanneer dit is voltooid, verschijnt een aantal seconden een melding in beeld. U kunt ook het belpictogram bovenaan de pagina selecteren om de melding te bekijken.

Volgende stappen

U hebt een functie gemaakt die wordt uitgevoerd wanneer een document wordt toegevoegd of gewijzigd in uw Azure Cosmos DB-account. Zie Azure Cosmos DB bindings for Azure Functions (Azure Cosmos DB-bindingen voor Azure Functions) voor meer informatie over Azure Cosmos DB-triggers.

Nu u uw eerste functie hebt gemaakt, gaan we een uitvoerbinding aan de functie toevoegen die een bericht naar een opslagwachtrij schrijft.