Azure Functions:キューメッセージをトリガーとしたPython関数を作成してみる

こんにちは、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関数について検証します。
お楽しみに!

この記事を書いた人

azure-recipe-user