[第6回][Azure Functions 入門] Blob triggerで動作する関数を作成するには?(後編)

Auzre Functions 入門 Azure
Auzre Functions 入門
スポンサーリンク

前回の記事では、Azure Storage Explorer を使用してコンテナーを作成して、画像のアップロードをしてみました。

今回は、コンテナーに画像が追加されたときに動作する Azure Functions を Visual Studio で作成してみます。

対象コンテナーの確認

Visual Studio プロジェクトを作成する前に、どのコンテナーを対象にするのかを確認しておきましょう。

前回インストールをした Azure Storage Explorer を起動したらリソースグループの名称と、コンテナー名称を確認します。ここで確認をしたリソースグループ名とコンテナー名は、プロジェクト作成時に使用します。

リソースグループ名とコンテナー名の確認

リソースグループ名とコンテナー名の確認

Visual Studio で プロジェクトを作成する

はじめに Visual Studio を起動して、新規のプロジェクトを作成します。

新しいプロジェクトの作成

新しいプロジェクトの作成

続いて、プロジェクト名を入力して [作成]ボタンをクリックします。

プロジェクト名の入力

プロジェクト名の入力

次に、作成する Azure Functions の一覧から「Blob trigger」を選択し、ストレージアカウント欄で「参照…」を選択します。

Blob trigger の選択とリソースグループの選択

Blob trigger の選択とリソースグループの選択

Azure Storage のダイアログが表示されるので、先ほど調べておいたストレージグループを選択し[追加]ボタンをクリックします。

リソースグループの選択

リソースグループの選択

最後に、先ほど調べておいたコンテナー名を入力して[作成]ボタンをクリックします。

コンテナー名を入力

コンテナー名を入力

Blob trigger の動作確認

まずは、Visual Studio の実行ボタンをクリックします。

プロジェクトの実行

プロジェクトの実行

ビルドが完了すると、コンソール画面が表示されます。

実行画面

実行画面

Azure Storage Explorer を起動して、プロジェクトで指定したコンテナーにファイルをアップロードします。ここでは ScreenShot_33.jpg という画像ファイルをアップロードしてみました。

ファイルのアップロード

ファイルのアップロード

画像ファイルのアップロードが完了すると、作成した Blob trigger が起動します。ちなみに Blob trriger はファイルを置換(上書き)する際も起動します。

コンソールは以下のようになり、アップロードされたファイル名が出力されていることがわかります。

Blob trigger の実行

Blob trigger の実行

作成されたコードの確認

Visual Studio に戻って、作成されたコードを確認しましょう。

筆者のコードは以下のようになりました。

using System;
using System.IO;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Host;
using Microsoft.Extensions.Logging;

namespace BlobTriggerFunction
{
    public static class Function1
    {
        [FunctionName("Function1")]
        public static void Run([BlobTrigger("myblob/{name}", Connection = "")]Stream myBlob, string name, ILogger log)
        {
            log.LogInformation($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myBlob.Length} Bytes");
        }
    }
}

引数 name でアップロードまたは更新された Blob の名前を取得することができます。

また、引数 myBlob.length で Blob サイズを取得できることがわかります。

おわりに

前編、後編に渡って Azure Blob Storage の作成方法と Blob trigger の作成方法について説明をしました。

特に技術的に難しい部分はなく、アイデア次第で色々と活用ができそうです。

Azure Blob Storage に関する詳細は、こちらで確認することができます。

また Blob trigger については、こちらで確認することができますので、是非参考にしてください。

Please follow and like us:

コメント

タイトルとURLをコピーしました