こんにちは、Michaelです。
今回は、Azure FunctionsのPythonテンプレートを使ってキューメッセージをトリガーとする関数の作成を検証します。
Azure Functionsの作成
Azure Functionsの作成には、Azureポータルを使用する方法と、Azure Functionsポータルを使用する方法の2通りがあります。いずれの場合もAzure Functionsの管理はAzureポータルを使うことになるため、今回はAzureポータルを使用する方法でAzure Functionsを作成します。
Azureポータルにログインしたら画面左上の「+新規」をクリックし、検索窓に「Function App」を入力して検索を実行します。検索結果の1番目に表示される「Function App」をクリックし、作成を進めていきます
Function Appの作成画面で「アプリ名」、「ホスティングプラン」等を設定し、作成をクリックします。
作成されたFunctions AppはApp Serviceで確認できます。
関数の作成
作成したFunctions Appをクリックすると関数の管理画面に遷移します。新たに関数の作成を行う場合には、「関数」の右の「+」ボタンをクリックします。
関数の作成画面では、はじめにクイックスタートが表示され、「タイマー」、「データ処理」、「Webhook + API」の3シナリオと、「C#」、「JavaScript」の2言語の組み合わせから簡単なサンプル関数が作成できます。
今回はPythonの関数を扱うため、画面下の「カスタム関数」をクリックします。
「テンプレートの選択」に遷移したら、「言語」のリストボックスから「Python」を選択します。現状では、「QueueTrigger-Python」のテンプレートしか選択できないため、これを選択します。
テンプレートを選択すると「関数名の指定」が表示されるので、関数名には任意の名称を設定してください。また、今回選択したテンプレートは、キューメッセージをトリガーとする関数であるため、「キュー名」とキューを受け取るAzure Storageのストレージアカウントを設定します。この設定は後から変更できるため、今回はテストとしてデフォルトの設定のまま作成します。
関数が作成されると、そのままスクリプトエディタが表示されます。スクリプトエディタには、受信したキューメッセージをログ画面に表示する簡単なスクリプトが記述されています。
右ペインの「テスト」をクリックすると、キューメッセージを飛ばす画面が表示されます。「要求本文」に任意のキューメッセージを入力し、実行をクリックすると、関数が実行され、ログ画面に入力したキューメッセージが表示されました。
今回は、簡単にAzure FunctionsのPythonテンプレートを使って関数の作成を試しました。現状、Pythonテンプレートにはキューメッセージをトリガーとするものしかありませんが、キューメッセージ以外のトリガーも設定次第で使用できるようです。
次回は、トリガー設定を変更し、Blobコンテナーへのデータ入力で動作するPython関数について検証します。
お楽しみに!