Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ebben a rövid útmutatóban a Visual Studio Code használatával hozhat létre egy alkalmazást, amely reagál az Azure Cosmos DB-ben található Nem SQL-adatbázisban lévő adatbázisváltozásokra. A kód helyi tesztelése után üzembe helyezi azt egy új kiszolgáló nélküli függvényalkalmazásban, amelyet egy Flex Consumption-csomagban hoz létre az Azure Functionsben.
A projektforrás az Azure Developer CLI (azd) bővítmény és a Visual Studio Code használatával egyszerűsíti a projektkód helyi inicializálását és ellenőrzését, valamint a kód Üzembe helyezését az Azure-ban. Ez az üzembe helyezés a biztonságos és méretezhető Azure Functions-környezetek jelenlegi ajánlott eljárásait követi.
Fontos
Az Azure Cosmos DB NoSQL adatbázis változásaira való válaszadás minden nyelven támogatott, de ez a gyors útmutató jelenleg csak C#, Python és TypeScript példákat tartalmaz. A rövid útmutató végrehajtásához válasszon egyet a cikk tetején található támogatott nyelvek közül.
Előfeltételek
Egy Azure-fiók, aktív előfizetéssel. Hozzon létre egy fiókot ingyenesen.
Visual Studio Code az egyik támogatott platformon.
A Visual Studio Code Azure Functions-bővítménye. Ehhez a bővítményhez azure Functions Core Tools szükséges. Ha ez az eszköz nem érhető el helyileg, a bővítmény csomagalapú telepítővel próbálja telepíteni. A Core Tools-csomagot a parancspaletta futtatásával is telepítheti vagy frissítheti. Ha nincs telepítve az npm vagy a Homebrew a helyi számítógépen, manuálisan kell telepítenie vagy frissítenie a Core Toolst.
C#-bővítmény a Visual Studio Code-hoz.
-
Node.js 18.x vagy újabb. Használja a
node --versionparancsot verziójának ellenőrzéséhez.
Az Azure Functions által támogatott Python-verziók. További információ: A Python telepítése.
- A Visual Studio Code Azure Developer CLI-bővítménye .
A projekt inicializálása
A parancs paletta azd init parancsával hozhat létre helyi Azure Functions-kódprojektet egy sablonból.
A Visual Studio Code-ban nyisson meg egy mappát vagy munkaterületet, amelyben létre szeretné hozni a projektet.
Nyomja le az F1 billentyűt a parancspaletta megnyitásához, a parancs
Azure Developer CLI (azd): Initialize App (init)kereséséhez és futtatásához, majd válassza a Sablon kiválasztása lehetőséget.Előfordulhat, hogy az aktuális mappa vagy munkaterület inicializálása némi
azdkéséssel jár.
Amikor a rendszer kéri, válassza a Sablon kiválasztása, majd keresse meg és válassza ki a
Azure Functions with Cosmos DB Bindings (.NET).Amikor a rendszer kéri, adjon meg egy egyedi környezetnevet, például
cosmosdbchanges-dotnet.Ez a parancs lekéri a projektfájlokat a sablontárházból , és inicializálja a projektet az aktuális mappában vagy munkaterületen. Ebben
azda környezetben egy egyedi üzembehelyezési környezetet tart fenn az alkalmazás számára, és több is definiálható. Az Azure-ban létrehozott erőforráscsoport nevének is része.
Amikor a rendszer kéri, válassza a Sablon kiválasztása, majd keresse meg és válassza ki a
Azure Functions TypeScript CosmosDB trigger.Amikor a rendszer kéri, adjon meg egy egyedi környezetnevet, például
cosmosdbchanges-ts.Ez a parancs lekéri a projektfájlokat a sablontárházból , és inicializálja a projektet az aktuális mappában vagy munkaterületen. Ebben
azda környezetben egy egyedi üzembehelyezési környezetet tart fenn az alkalmazás számára, és több is definiálható. Az Azure-ban létrehozott erőforráscsoport nevének is része.
Amikor a rendszer kéri, válassza a Sablon kiválasztása, majd keresse meg és válassza ki a
Azure Functions Python with CosmosDB triggers and bindings....Amikor a rendszer kéri, adjon meg egy egyedi környezetnevet, például
cosmosdbchanges-py.Ez a parancs lekéri a projektfájlokat a sablontárházból , és inicializálja a projektet az aktuális mappában vagy munkaterületen. Ebben
azda környezetben egy egyedi üzembehelyezési környezetet tart fenn az alkalmazás számára, és több is definiálható. Az Azure-ban létrehozott erőforráscsoport nevének is része.
Futtassa ezt a parancsot a helyi operációs rendszertől függően a konfigurációs szkriptek számára a szükséges engedélyek megadásához:
Futtassa ezt a parancsot megfelelő jogosultságokkal:
chmod +x ./infra/scripts/*.sh
Mielőtt helyileg futtathatja az alkalmazást, létre kell hoznia az erőforrásokat az Azure-ban. Ez a projekt nem használ helyi emulációt az Azure Cosmos DB-hez.
Azure-erőforrások létrehozása
Ez a projekt úgy van konfigurálva, hogy a azd provision parancsot használva hozzon létre egy függvényalkalmazást egy Flex Consumption-csomagban, valamint egyéb szükséges Azure-erőforrásokat, amelyek az aktuális ajánlott eljárásokat követik.
A Visual Studio Code-ban nyomja le az F1 billentyűt a parancspaletta megnyitásához, a parancs
Azure Developer CLI (azd): Sign In with Azure Developer CLIkereséséhez és futtatásához, majd jelentkezzen be az Azure-fiókjával.Nyomja le az F1 billentyűt a parancskatalógus megnyitásához, keresse meg és futtassa a parancsot
Azure Developer CLI (azd): Provision Azure resources (provision)a szükséges Azure-erőforrások létrehozásához:Amikor a rendszer kéri a terminálablakban, adja meg az alábbi szükséges üzembehelyezési paramétereket:
Haladéktalan Description Használandó Azure-előfizetés kiválasztása Válassza ki azt az előfizetést, amelyben létre szeretné hozni az erőforrásokat. hely üzembehelyezési paramétere Azure-régió, amelyben létre kell hozni az új Azure-erőforrásokat tartalmazó erőforráscsoportot. Csak azok a régiók jelennek meg, amelyek jelenleg támogatják a Rugalmas felhasználás csomagot. vnetEnabled üzembehelyezési paraméter Bár a sablon támogatja az erőforrások virtuális hálózaton belüli létrehozását, az üzembe helyezés és a tesztelés egyszerűsítése érdekében válassza a lehetőséget False.A
azd provisionparancs a bicep-konfigurációs fájlokkal az Ön válaszát használja a szükséges Azure-erőforrások létrehozásához és konfigurálásához, a legújabb ajánlott eljárásokat követve:- Rugalmas kihasználtságú csomag és függvényalkalmazás
- Azure Cosmos DB-fiók
- Azure Storage (kötelező) és Application Insights (ajánlott)
- Hozzáférési szabályzatok és szerepkörök a fiókhoz
- Szolgáltatásközi kapcsolatok felügyelt identitásokkal (tárolt kapcsolati sztring helyett)
A kiépítés utáni horgok a helyi futtatáshoz szükséges local.settings.json fájlt is létrehoznak. Ez a fájl az Azure Cosmos DB-adatbázishoz való csatlakozáshoz szükséges beállításokat is tartalmazza az Azure-ban.
Jótanács
Ha a kiépítés során bármilyen lépés meghiúsul, a problémák megoldása után újra futtathatja a
azd provisionparancsot.A parancs sikeres végrehajtása után helyileg futtathatja a projektkódot, és aktiválhatja azt az Azure Cosmos DB-adatbázisban.
A függvény helyi futtatása
A Visual Studio Code az Azure Functions Core-eszközökkel integrálva lehetővé teszi a projekt helyi fejlesztői számítógépen való futtatását, mielőtt közzétennénk az új függvényalkalmazásban az Azure-ban.
Nyomja le az F1 billentyűt, és a parancskatalógusban keresse meg és futtassa a parancsot
Azurite: Start.A függvény helyi indításához nyomja le az F5 billentyűt vagy a Futtatás és hibakeresés ikont a bal oldali tevékenységsávon. A Terminál panelen a Core Tools kimenete látható. Az alkalmazás a Terminál panelen kezdődik, és láthatja a helyileg futó függvény nevét.
Ha problémákat tapasztal a Windows rendszeren való futtatással, győződjön meg arról, hogy a Visual Studio Code alapértelmezett terminálja nincs beállítva WSL Bash-ra.
Ha a Core Tools továbbra is fut a Terminálban, nyomja le az F1 billentyűt, majd a parancskatalógusban keresse meg és futtassa a parancsot
NoSQL: Create Item..., és válassza ki azdocument-dbadatbázist és a tárolótdocumentsis.Cserélje le az Új Item.json fájl tartalmát erre a JSON-adatra, és válassza a Mentés lehetőséget:
{ "id": "doc1", "title": "Sample document", "content": "This is a sample document for testing my Azure Cosmos DB trigger in Azure Functions." }A Mentés lehetőség kiválasztása után megjelenik a függvény végrehajtása a terminálban, és a helyi dokumentum frissül, hogy tartalmazza a szolgáltatás által hozzáadott metaadatokat.
Ha elkészült, a gazdafolyamat leállításához nyomja le a Ctrl+C billentyűkombinációt a
func.exeterminálablakban.
A kód áttekintése (nem kötelező)
A függvény egy Azure Cosmos DB NoSQL-adatbázisban lévő változáscsatorna alapján aktiválódik. Ezek a környezeti változók konfigurálják, hogy az eseményindító hogyan figyeli a változáscsatornát:
-
COSMOS_CONNECTION__accountEndpoint: A Cosmos DB-fiók végpontja -
COSMOS_DATABASE_NAME: A monitorozni kívánt adatbázis neve -
COSMOS_CONTAINER_NAME: A monitorozni kívánt tároló neve
Ezek a környezeti változók az Azure-ban (függvényalkalmazás-beállítások) és helyileg (local.settings.json) is létrejönnek a azd provision művelet során.
A CosmosTrigger.cs projektfájlban áttekintheti az Azure Cosmos DB-eseményindítót meghatározó kódot.
A cosmos_trigger.ts projektfájlban áttekintheti az Azure Cosmos DB-eseményindítót meghatározó kódot.
A function_app.py projektfájlban áttekintheti az Azure Cosmos DB-eseményindítót meghatározó kódot.
A függvénykód helyi áttekintése és ellenőrzése után itt az ideje, hogy közzétegye a projektet az Azure-ban.
Telepítés az Azure-ra
A Visual Studio Code-ban futtatható azd deploy parancs futtatásával üzembe helyezheti a projektkódot az Azure-ban már kiépített erőforrásokon.
Nyomja le az F1 billentyűt a parancskatalógus megnyitásához, a parancs kereséséhez és futtatásához
Azure Developer CLI (azd): Deploy to Azure (deploy).A
azd deployparancs becsomagolja és üzembe helyezi a kódot az üzembe helyezési tárolóban. Az alkalmazás ezután elindul, és az üzembe helyezett csomagban fut.A parancs sikeres végrehajtása után az alkalmazás az Azure-ban fut.
A függvény meghívása az Azure-ban
A Visual Studio Code-ban nyomja le az F1 billentyűt, majd a parancskatalógusban keresse meg és futtassa a parancsot
Azure: Open in portal, válassza kiFunction appés válassza ki az új alkalmazást. Szükség esetén jelentkezzen be az Azure-fiókjával.Ez a parancs megnyitja az új függvényalkalmazást az Azure Portalon.
A főlap Áttekintés lapján válassza ki a függvényalkalmazás nevét, majd a Naplók lapot.
NoSQL: Create ItemA Visual Studio Code parancsával ismét hozzáadhat egy dokumentumot a tárolóhoz a korábbiakhoz hasonlóan.Ellenőrizze újra, hogy a függvényt egy frissítés aktiválja-e a figyelt tárolóban.
A kód ismételt üzembe helyezése
A parancsot annyiszor futtathatja azd deploy , amennyi a függvényalkalmazás kódfrissítéseinek üzembe helyezéséhez szükséges.
Megjegyzés:
Az üzembe helyezett kódfájlokat mindig felülírja a legújabb üzembehelyezési csomag.
A kérésekre adott kezdeti válaszokat azd és az általuk azd létrehozott környezeti változókat a rendszer helyileg tárolja a nevesített környezetben.
azd env get-values A paranccsal áttekintheti a környezet összes olyan változóját, amelyet az Azure-erőforrások létrehozásakor használtak.
Erőforrások tisztítása
Ha végzett a függvényalkalmazással és a kapcsolódó erőforrásokkal, ezzel a paranccsal törölheti a függvényalkalmazást és annak kapcsolódó erőforrásait az Azure-ból, és elkerülheti a további költségek felmerülését:
azd down --no-prompt
Megjegyzés:
A --no-prompt beállítás arra utasítja azd , hogy az erőforráscsoportot anélkül törölje, hogy ön megerősítést kap.
Ez a parancs nincs hatással a helyi kódprojektre.