Tworzenie funkcji na platformie Azure wyzwalanej przez usługę BLOB StorageCreate a function in Azure that's triggered by Blob storage

Dowiedz się, jak utworzyć funkcję wyzwalaną, gdy pliki są przekazywane do kontenera magazynu obiektów blob lub zaktualizowane.Learn how to create a function triggered when files are uploaded to or updated in a Blob storage container.

Wymagania wstępnePrerequisites

  • Subskrypcja platformy Azure.An Azure subscription. Jeśli nie masz subskrypcji, przed rozpoczęciem utwórz bezpłatne konto.If you don't have one, create a free account before you begin.

Tworzenie aplikacji funkcji platformy AzureCreate an Azure Function app

  1. W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Utwórz zasób.From the Azure portal menu or the Home page, select Create a resource.

  2. Na stronie Nowy wybierz pozycję obliczeniowe > aplikacja funkcji.In the New page, select Compute > Function App.

  3. Na stronie podstawowe Użyj ustawień aplikacji funkcji, zgodnie z opisem w poniższej tabeli.On the Basics page, use the function app settings as specified in the following table.

    UstawienieSetting Sugerowana wartośćSuggested value OpisDescription
    SubskrypcjaSubscription Twoja subskrypcjaYour subscription Subskrypcja, w ramach której jest tworzona ta nowa aplikacja funkcji.The subscription under which this new function app is created.
    Grupa zasobówResource Group myResourceGroupmyResourceGroup Nazwa nowej grupy zasobów, w której ma zostać utworzona aplikacja funkcji.Name for the new resource group in which to create your function app.
    Nazwa aplikacji funkcjiFunction App name Nazwa unikatowa w skali globalnejGlobally unique name Nazwa identyfikująca nową aplikację funkcji.Name that identifies your new function app. Prawidłowe znaki to a-z (bez uwzględniania wielkości liter), 0-9i -.Valid characters are a-z (case insensitive), 0-9, and -.
    PublikowaniePublish KodCode Opcja publikowania plików kodu lub kontenera Docker.Option to publish code files or a Docker container.
    Stos środowiska uruchomieniowegoRuntime stack Preferowany językPreferred language Wybierz środowisko uruchomieniowe, które obsługuje ulubiony język programowania funkcji.Choose a runtime that supports your favorite function programming language. Wybierz pozycję .NET Core dla języków C# i F #.Choose .NET Core for C# and F# functions.
    WersjaVersion Numer wersjiVersion number Wybierz wersję zainstalowanego środowiska uruchomieniowego.Choose the version of your installed runtime.
    RegionRegion Preferowany regionPreferred region Wybierz region znajdujący się w sąsiedztwie lub w najbliższej usłudze dostęp do funkcji.Choose a region near you or near other services your functions access.

    Podstawy

  4. Wybierz pozycję Dalej: hosting.Select Next : Hosting. Na stronie hosting wprowadź następujące ustawienia.On the Hosting page, enter the following settings.

    UstawienieSetting Sugerowana wartośćSuggested value OpisDescription
    Konto magazynuStorage account Nazwa unikatowa w skali globalnejGlobally unique name Utwórz konto magazynu używane przez aplikację funkcji.Create a storage account used by your function app. Nazwy kont magazynu muszą mieć długość od 3 do 24 znaków i mogą zawierać tylko cyfry i małe litery.Storage account names must be between 3 and 24 characters in length and can contain numbers and lowercase letters only. Możesz również użyć istniejącego konta, które musi spełniać wymagania dotyczące konta magazynu.You can also use an existing account, which must meet the storage account requirements.
    System operacyjnyOperating system Preferowany system operacyjnyPreferred operating system System operacyjny jest wstępnie wybrany na podstawie wybranego stosu środowiska uruchomieniowego, ale w razie potrzeby można zmienić to ustawienie.An operating system is pre-selected for you based on your runtime stack selection, but you can change the setting if necessary.
    PlanowaniePlan Zużycie (bezserwerowe)Consumption (Serverless) Plan hostingu określający sposób przydzielania zasobów do aplikacji funkcji.Hosting plan that defines how resources are allocated to your function app. W domyślnym planie Zużycie zasoby są dodawane dynamicznie zgodnie z wymaganiami funkcji.In the default Consumption plan, resources are added dynamically as required by your functions. W tym przypadku hostingu bezserwerowego płacisz tylko za czas wykonywania funkcji.In this serverless hosting, you pay only for the time your functions run. W przypadku uruchomienia w ramach planu usługi App Service musisz zarządzać skalowaniem aplikacji funkcji.When you run in an App Service plan, you must manage the scaling of your function app.

    Hosting

  5. Wybierz kolejno pozycje Dalej: monitorowanie.Select Next : Monitoring. Na stronie monitorowanie wprowadź następujące ustawienia.On the Monitoring page, enter the following settings.

    UstawienieSetting Sugerowana wartośćSuggested value OpisDescription
    Application InsightsApplication Insights DomyślneDefault Tworzy zasób Application Insights o tej samej nazwie aplikacji w najbliższym obsługiwanym regionie.Creates an Application Insights resource of the same App name in the nearest supported region. Rozszerzając to ustawienie lub wybierając pozycję Utwórz nowe, możesz zmienić nazwę Application Insights lub wybrać inny region w obszarze geograficznym platformy Azure , w którym chcesz przechowywać dane.By expanding this setting or selecting Create new, you can change the Application Insights name or choose a different region in an Azure geography where you want to store your data.

    Monitorowanie

  6. Wybierz pozycję Przegląd + Utwórz , aby przejrzeć wybrane opcje konfiguracji aplikacji.Select Review + create to review the app configuration selections.

  7. Na stronie Recenzja i tworzenie przejrzyj ustawienia, a następnie wybierz pozycję Utwórz , aby udostępnić i wdrożyć aplikację funkcji.On the Review + create page, review your settings, and then select Create to provision and deploy the function app.

  8. Wybierz ikonę powiadomienia w prawym górnym rogu portalu i obejrzyj komunikat wdrażanie zakończyło się pomyślnie .Select the Notifications icon in the upper-right corner of the portal and watch for the Deployment succeeded message.

  9. Wybierz pozycję Przejdź do zasobu, aby wyświetlić nową aplikację funkcji.Select Go to resource to view your new function app. Możesz również wybrać pozycję Przypnij do pulpitu nawigacyjnego.You can also select Pin to dashboard. Przypinanie ułatwia powrót do tego zasobu aplikacji funkcji z pulpitu nawigacyjnego.Pinning makes it easier to return to this function app resource from your dashboard.

    Powiadomienie dotyczące wdrożenia

Twoja nowa aplikacja funkcji została pomyślnie utworzona.You've successfully created your new function app.

Pomyślnie utworzona aplikacja funkcji.

Następnie należy utworzyć funkcję w nowej aplikacji funkcji.Next, you create a function in the new function app.

Tworzenie funkcji wyzwalanej przez magazyn obiektów blob platformy AzureCreate an Azure Blob storage triggered function

  1. Wybierz pozycję funkcje, a następnie wybierz pozycję + Dodaj , aby dodać nową funkcję.Select Functions, and then select + Add to add a new function.

    Pomyślnie utworzona aplikacja funkcji.

  2. Wybierz szablon wyzwalacza usługi Azure Blob Storage .Choose the Azure Blob Storage trigger template.

  3. Użyj ustawień w sposób określony w tabeli znajdującej się poniżej obrazu.Use the settings as specified in the table below the image.

    Pomyślnie utworzona aplikacja funkcji.

    UstawienieSetting Sugerowana wartośćSuggested value OpisDescription
    Nowa funkcjaNew Function Unikatowa w obrębie aplikacji funkcjiUnique in your function app Nazwa funkcji wyzwalanej przez obiekt blob.Name of this blob triggered function.
    ŚcieżkaPath samples-workitems/{name}samples-workitems/{name} Lokalizacja w monitorowanym magazynie obiektów Blob.Location in Blob storage being monitored. Nazwa pliku obiektu Blob jest przekazywana w powiązaniu jako parametr nazwa.The file name of the blob is passed in the binding as the name parameter.
    Połączenie konta magazynuStorage account connection AzureWebJobsStorageAzureWebJobsStorage Możesz skorzystać z połączenia konta magazynu już używanego przez aplikację funkcji lub utworzyć nowe.You can use the storage account connection already being used by your function app, or create a new one.
  4. Wybierz pozycję Utwórz funkcję , aby utworzyć funkcję.Select Create Function to create your function.

    Pomyślnie utworzona aplikacja funkcji.

Następnie utwórz kontener Samples-elementy robocze .Next, create the samples-workitems container.

Tworzenie konteneraCreate the container

  1. W funkcji na stronie Przegląd wybierz grupę zasobów.In your function, on the Overview page, select your resource group.

    Pomyślnie utworzona aplikacja funkcji.

  2. Znajdź i wybierz konto magazynu grupy zasobów.Find and select your resource group's storage account.

    Pomyślnie utworzona aplikacja funkcji.

  3. Wybierz kontenery, a następnie wybierz pozycję + kontener.Choose Containers, and then choose + Container.

    Pomyślnie utworzona aplikacja funkcji.

  4. W polu Nazwa wpisz samples-workitems , a następnie wybierz pozycję Utwórz.In the Name field, type samples-workitems, and then select Create.

    Pomyślnie utworzona aplikacja funkcji.

Teraz, gdy masz już kontener obiektów Blob, możesz przetestować funkcję, przekazując plik do kontenera.Now that you have a blob container, you can test the function by uploading a file to the container.

Testowanie funkcjiTest the function

  1. Wróć do witryny Azure Portal, przejdź do swoich funkcji, rozwiń pozycję Dzienniki w dolnej części strony i upewnij się, że strumieniowe przesyłanie dzienników nie jest wstrzymane.Back in the Azure portal, browse to your function expand the Logs at the bottom of the page and make sure that log streaming isn't paused.

    Pomyślnie utworzona aplikacja funkcji.

  2. W osobnym oknie przeglądarki przejdź do grupy zasobów w Azure Portal i wybierz konto magazynu.In a separate browser window, go to your resource group in the Azure portal, and select the storage account.

  3. Wybierz pozycję kontenery, a następnie wybierz kontener przykłady — elementy robocze .Select Containers, and then select the samples-workitems container.

    Pomyślnie utworzona aplikacja funkcji.

  4. Wybierz pozycję Przekaż, a następnie wybierz ikonę folderu, aby wybrać plik do przekazania.Select Upload, and then select the folder icon to choose a file to upload.

    Pomyślnie utworzona aplikacja funkcji.

  5. Przejdź do pliku na komputerze lokalnym, na przykład pliku obrazu, wybierz plik.Browse to a file on your local computer, such as an image file, choose the file. Wybierz pozycję Otwórz , a następnie Przekaż.Select Open and then Upload.

  6. Wróć do dzienników funkcji i sprawdź, czy obiekt Blob został odczytany.Go back to your function logs and verify that the blob has been read.

    Pomyślnie utworzona aplikacja funkcji.

    Uwaga

    Gdy aplikacja funkcji zostanie uruchomiona w domyślnym planie Zużycie, może wystąpić nawet kilkuminutowe opóźnienie między dodaniem lub zaktualizowaniem obiektu Blob a wyzwoleniem funkcji.When your function app runs in the default Consumption plan, there may be a delay of up to several minutes between the blob being added or updated and the function being triggered. Jeśli zależy Ci na małych opóźnieniach w funkcjach wyzwalanych przez obiekty Blob, rozważ uruchomienie aplikacji funkcji w planie usługi App Service.If you need low latency in your blob triggered functions, consider running your function app in an App Service plan.

Czyszczenie zasobówClean up resources

Inne przewodniki Szybki start w tej kolekcji bazują na tym przewodniku.Other quickstarts in this collection build upon this quickstart. Jeśli planujesz współpracować z kolejnymi przewodnikami Szybki Start, samouczkami lub z dowolnymi usługami utworzonymi w ramach tego przewodnika Szybki Start, nie czyść zasobów.If you plan to work with subsequent quickstarts, tutorials, or with any of the services you have created in this quickstart, do not clean up the resources.

Zasoby na platformie Azure dotyczą aplikacji funkcji, funkcji, kont magazynu i tak dalej.Resources in Azure refer to function apps, functions, storage accounts, and so forth. Są one pogrupowane w grupy zasobów, a wszystkie elementy w grupie można usunąć, usuwając grupę.They're grouped into resource groups, and you can delete everything in a group by deleting the group.

Aby ukończyć te przewodniki Szybki start, zostały utworzone zasoby.You created resources to complete these quickstarts. Za te zasoby może zostać naliczona opłata — zależy to od Twojego stanu konta i cennika usług.You may be billed for these resources, depending on your account status and service pricing. Jeśli nie potrzebujesz już tych zasobów, oto jak możesz je usunąć:If you don't need the resources anymore, here's how to delete them:

  1. W witrynie Azure Portal przejdź do strony Grupa zasobów.In the Azure portal, go to the Resource group page.

    Aby uzyskać dostęp do tej strony na stronie aplikacji funkcji, wybierz kartę Omówienie, a następnie wybierz link w obszarze Grupa zasobów.To get to that page from the function app page, select the Overview tab and then select the link under Resource group.

    Wybierz grupę zasobów do usunięcia ze strony aplikacji funkcji.

    Aby uzyskać dostęp do tej strony z poziomu pulpitu nawigacyjnego, wybierz pozycję Grupy zasobów, a następnie wybierz grupę zasobów, która została użyta na potrzeby tego przewodnika Szybki start.To get to that page from the dashboard, select Resource groups, and then select the resource group that you used for this quickstart.

  2. Na stronie Grupa zasobów zapoznaj się z listą uwzględnionych zasobów i sprawdź, czy są one tymi, które chcesz usunąć.In the Resource group page, review the list of included resources, and verify that they're the ones you want to delete.

  3. Wybierz pozycję Usuń grupę zasobów, a następnie postępuj zgodnie z instrukcjami.Select Delete resource group, and follow the instructions.

    Usuwanie może potrwać kilka minut.Deletion may take a couple of minutes. Po jego zakończeniu przez kilka sekund będzie widoczne powiadomienie.When it's done, a notification appears for a few seconds. Możesz również wybrać ikonę dzwonka w górnej części strony, aby wyświetlić powiadomienie.You can also select the bell icon at the top of the page to view the notification.

Następne krokiNext steps

Utworzono funkcję, która jest uruchamiana w momencie dodania obiektu Blob do magazynu obiektów Blob lub zaktualizowania obiektu Blob w magazynie.You have created a function that runs when a blob is added to or updated in Blob storage. Aby uzyskać więcej informacji na temat wyzwalaczy magazynu obiektów Blob, zobacz Powiązania magazynu obiektów Blob w usłudze Azure Functions.For more information about Blob storage triggers, see Azure Functions Blob storage bindings.

Teraz, po utworzeniu pierwszej funkcji, dodajmy powiązanie danych wyjściowych do funkcji, która zapisuje komunikat w kolejce magazynu.Now that you've created your first function, let's add an output binding to the function that writes a message to a Storage queue.