Partager via


Créer une fonction dans Azure qui est déclenchée par le stockage Blob

Apprenez à créer une fonction déclenchée lorsque des fichiers sont chargés dans ou mis à jour dans un conteneur de stockage blob.

Remarque

La modification dans le portail n’est prise en charge que par les fonctions de Script de JavaScript, PowerShell et C#. La modification Python dans le portail est prise en charge uniquement lors de l’exécution dans le plan de Consommation. Pour créer une application C# Script qui prend en charge la modification dans le portail, vous devez choisir un runtimeVersion qui prend en charge le modèle in-process.

Quand cela est possible, vous devez développer vos fonctions localement.

Pour en savoir plus sur les limitations relatives à la modification du code de fonctions dans le portail Azure, consultez Limitations de développement dans le portail Azure.

Prérequis

  • Un abonnement Azure. Si vous n’en avez pas, créez un compte gratuit avant de commencer.

Création d’une application Azure Function

  1. Dans le menu du portail Azure ou dans la page Accueil, sélectionnez Créer une ressource.

  2. Dans la page Nouveau, sélectionnez Calcul>Application de fonction.

  3. Sous Sélectionner une option d’hébergement, sélectionnez Consommation>Sélectionner pour créer votre application dans le plan de Consommation par défaut. Avec cette option d’hébergement serverless, vous payez uniquement pour la durée d’exécution de vos fonctions. Le plan Premium offre également une mise à l'échelle dynamique. Si vous exécutez dans un plan App Service, vous devez gérer la mise à l’échelle de votre application de fonction.

  4. Dans la page De base, utilisez les paramètres d’application de fonction comme indiqué dans le tableau ci-dessous :

    Paramètre Valeur suggérée Description
    Abonnement Votre abonnement L'abonnement sous lequel vous créez votre nouvelle application de fonction.
    Groupe de ressources myResourceGroup Nom du nouveau groupe de ressources dans lequel vous créez votre application de fonction. Vous devez créer un groupe de ressources du fait de limitations connues lors de la création d’applications de fonction dans un groupe de ressources existant.
    Nom de l’application de fonction Nom globalement unique Nom qui identifie votre nouvelle Function App. Les caractères valides sont a-z (insensible à la casse), 0-9et -.
    Pile d’exécution Langage préféré Choisissez un runtime qui prend en charge votre langage de programmation de fonction favori. L’édition dans le portail n’est disponible que pour les scripts JavaScript, PowerShell, Python, TypeScript et C#.
    Pour créer une application C# Script qui prend en charge la modification dans le portail, vous devez choisir un runtimeVersion qui prend en charge le modèle in-process.
    La bibliothèque de classes C# et les fonctions Java doivent être développées localement.
    Version Numéro de version Choisissez la version de votre runtime installé.
    Région Région recommandée Sélectionnez une région proche de chez vous, ou proche d’autres services auxquels vos fonctions peuvent accéder.
    Système d’exploitation Windows Un système d'exploitation est présélectionné pour vous en fonction de votre sélection de pile d'exécution, mais vous pouvez modifier ce paramètre si nécessaire. La modification sur le portail est prise en charge sur Windows uniquement.
  5. Acceptez les options par défaut dans les onglets restants, y compris le comportement par défaut de création d’un compte de stockage sous l’onglet Stockage, ainsi qu’une nouvelle instance Application Insight sous l’onglet Surveillance. Vous pouvez également choisir d’utiliser un compte de stockage existant ou une instance Application Insights.

  6. Sélectionnez Examiner + créer pour examiner la configuration de l'application que vous avez choisie, puis sélectionnez Créer pour approvisionner et déployer l'application de fonction.

  7. Cliquez sur l’icône Notifications en haut à droite du portail pour voir le message Le déploiement a été effectué.

  8. Sélectionnez Accéder à la ressource pour afficher votre nouvelle application de fonction. Vous pouvez également sélectionner Épingler au tableau de bord. L’épinglage permet de revenir plus facilement à cette ressource d’application de fonction à partir de votre tableau de bord.

    Capture d’écran de la notification du déploiement.

Vous avez correctement créé votre application de fonction. Créez ensuite une fonction dans la nouvelle Function App.

Créer une fonction déclenchée par le stockage Azure Blob

  1. Dans votre application de fonction, sélectionnez Vue d’ensemble, puis + Créer sous Fonctions.

  2. Sous Sélectionner un modèle, choisissez le déclencheur d’objet blob, puis sélectionnez suivant.

  3. Dans les Détails du modèle, configurez le nouveau déclencheur avec les paramètres spécifiés dans ce tableau, puis sélectionnez Créer :

    Paramètre Valeur suggérée Description
    Type de poste Ajouter à l’application Ce paramètre s’affiche uniquement pour une application Python v2.
    Nouvelle fonction Unique dans votre Function App Nom de cette fonction déclenchée par l’objet Blob.
    Chemin d’accès samples-workitems/{name} Emplacement du stockage Blob analysé. Le nom de fichier de l’objet Blob est transmis dans la liaison en tant que paramètre name.
    Connexion au compte de stockage AzureWebJobsStorage Vous pouvez utiliser la connexion de compte de stockage qui est déjà utilisée par votre application de fonction, ou créez-en une.

    Azure crée la fonction de déclencheur stockage Blob en fonction des valeurs fournies. Créez ensuite le conteneur samples-workItems.

Créer le conteneur

  1. Revenez à la page Vue d’ensemble de votre application de fonction, sélectionnez votre groupe de ressources, puis recherchez et sélectionnez le compte de stockage dans votre groupe de ressources.

  2. Dans la page du compte de stockage, sélectionnez Stockage de données>Conteneurs>+ conteneur.

  3. Dans le champ Nom, tapez samples-workitems, puis sélectionnez Créer pour créer un conteneur.

  4. Sélectionnez le nouveau conteneur samples-workitems, que vous utilisez pour tester la fonction en chargeant un fichier dans le conteneur.

Tester la fonction

  1. Dans une nouvelle fenêtre de navigateur, revenez à la page de votre application de fonction et sélectionnez flux de journal, qui affiche la journalisation en temps réel pour votre application.

  2. Dans la page de conteneur samples-workitems, sélectionnez Charger>Rechercher des fichiers, accédez à un fichier sur votre ordinateur local (tel qu’un fichier image), puis choisissez le fichier.

  3. Sélectionnez Ouvrir, puis Charger.

  4. Revenez aux journaux de votre application de fonction et vérifiez que l’objet blob a été lu.

    Remarque

    Lorsque votre Function App s’exécute dans le plan de consommation par défaut, il peut s’écouler un délai de plusieurs minutes entre l’ajout ou la mise à jour de l’objet blob et le déclenchement de la fonction. Si vous avez besoin d’une faible latence dans vos fonctions déclenchées par l’objet blob, envisagez l’une de ces autres options de déclencheur d’objet blob.

Nettoyer les ressources

Les autres démarrages rapides de cette collection reposent sur ce démarrage rapide. Si vous envisagez d’utiliser d’autres guides de démarrage rapide ou tutoriels, ou l’un des services que vous avez créés dans ce guide de démarrage rapide, ne supprimez pas les ressources.

Ressources dans Azure fait référence aux applications de fonction, fonctions, comptes de stockage, et ainsi de suite. Elles sont rassemblées en groupes de ressources, et vous pouvez supprimer tous les éléments d’un groupe en supprimant le groupe.

Vous avez créé des ressources pour effectuer ces démarrages rapides. Vous pouvez être facturé pour ces ressources en fonction de l’état de votre compte et de la tarification du service. Si vous n’avez plus besoin des ressources, voici comment les supprimer :

  1. Dans le portail Azure, accédez à la page Groupe de ressources.

    Pour accéder à cette page à partir de la page de l’application de fonction, sélectionnez l’onglet Vue d’ensemble, puis le lien situé sous Groupe de ressources.

    Capture d’écran montrant la sélection du groupe de ressources à supprimer sur la page de l’application de fonction.

    Pour accéder à la page à partir du tableau de bord, sélectionnez Groupes de ressources, puis le groupe de ressources que vous avez utilisé pour cet article.

  2. Dans la page Groupe de ressources, passez en revue la liste des ressources incluses et vérifiez qu’elles correspondent à celles que vous souhaitez supprimer.

  3. Sélectionnez Supprimer le groupe de ressources et suivez les instructions.

    La suppression peut prendre quelques minutes. Une fois terminée, une notification s’affiche pendant quelques secondes. Vous pouvez également sélectionner l’icône représentant une cloche en haut de la page pour afficher la notification.

Étapes suivantes

Vous avez créé une fonction qui s’exécute lorsqu’un objet blob est ajouté ou mis à jour dans le stockage Blob. Pour plus d’informations sur les déclencheurs de stockage Blob, consultez Liaisons de stockage Blob Azure Functions.

Maintenant que vous avez créé votre première fonction, nous allons y ajouter une liaison de sortie qui écrit un message dans une file d’attente de stockage.