Azure Functions の各テンプレートで利用できる開発言語について

スポンサーリンク
Microsoft Public Affiliate Program (JP)(マイクロソフトアフィリエイトプログラム)

Azure Functions には「HTTP 要求を使用して、コードの実行をトリガーする HTTPTrigger」、「事前に定義されたスケジュールをもとにタスクを実行する TimerTrigger」といった開発を手助けする様々なテンプレートが各開発言語用に用意されていますが、テンプレートによっては特定の言語以外は用意されていないものもあります。

今後テンプレートや対応する開発言語は随時増えていくと思いますが、現時点で各テンプレートで利用可能な開発言語をまとめてみました。

各 Azure Functions テンプレートで利用できる開発言語

※2017/11/28 時点の情報を元にまとめています。

AppInsights Http Availability

Application Insights を使って Web アプリの可用性と応答性を監視する

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F# ×
JavaScript ×
PHP ×
PowerShell ×
Python ×
TypeScript ×

AppInsights Real-time Power BI

Application Insights から Power BI にリアルタイムの可用性データをプッシュする

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F# ×
JavaScript ×
PHP ×
PowerShell ×
Python ×
TypeScript ×

AppInsights Scheduled Analytics

Application Insights でアプリのテレメトリの詳細な分析を実行し、そこからメトリックを取得する

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F# ×
JavaScript ×
PHP ×
PowerShell ×
Python ×
TypeScript ×

AppInsights Scheduled Digest

1日 1回メールで Application Insights のテレメトリ レポートを送信する

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F# ×
JavaScript ×
PHP ×
PowerShell ×
Python ×
TypeScript ×

BlobTrigger

指定したコンテナーに BLOB が追加されると実行される

開発言語

テンプレートの有無
Bash ×
Batch ○ (試験段階)
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ○ (試験段階)

CosmosDBTrigger

ドキュメントがドキュメント コレクション内で変更すると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F# ×
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ×

EventGridTrigger

Event Grid が新しいイベントを受信すると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F# ×
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ×

EventHubTrigger

イベント ハブが新しいイベントを受信すると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ○ (試験段階)

ExternalFileTrigger

外部ファイル プロバイダーにファイルが追加されると実行される

開発言語

テンプレートの有無
Bash ×
Batch ○ (試験段階)
C# ○ (プレビュー)
F# ○ (プレビュー)
JavaScript ○ (プレビュー)
PHP ×
PowerShell ×
Python ×
TypeScript ×

ExternalTable

HTTP 要求を受信すると外部テーブルからエンティティをフェッチする

開発言語

テンプレートの有無
Bash ×
Batch ×
C# ○ (試験段階)
F# ○ (試験段階)
JavaScript ×
PHP ×
PowerShell ×
Python ×
TypeScript ×

FaceLocator

画像を処理して、顔に外接する長方形を出力する

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ×

Generic Webhook

webhook 要求を受信すると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ○ (試験段階)

GitHub Commenter

GitHub webhook 要求を受信すると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ×

GitHub Webhook

GitHub Webhook 要求を受信すると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ○ (試験段階)

HttpGET(CRUD)

HTTP 要求の受信時にストレージ テーブルからエンティティをフェッチする

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ○ (試験段階)
PowerShell ×
Python ×
TypeScript ×

HttpPOST(CRUD)

HTTP 要求の受信時にストレージ テーブルにエンティティを追加する

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ×

HttpPOST(CRUD)Queue

HTTP POST を受信するとデータをキューにプッシュする

開発言語

テンプレートの有無
Bash ×
Batch ×
C# ×
F#
JavaScript ×
PHP ×
PowerShell ×
Python ×
TypeScript ×

HttpPUT(CRUD)

HTTP 要求を受信するとストレージ テーブルのエンティティを更新する

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript ×
PHP ×
PowerShell ×
Python ×
TypeScript ×

HttpTrigger

HTTP 要求を受信すると実行される

開発言語

テンプレートの有無
Bash ×
Batch ○ (試験段階)
C#
F#
JavaScript
PHP ×
PowerShell ○ (プレビュー)
Python ○ (試験段階)
TypeScript ○ (試験段階)

HttpTriggerWithParameters

HTTP 要求を受信するたびに実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F# ×
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ×

Image resize

指定したコンテナーに BLOB が追加されるとサイズを変更した画像を作成する

開発言語

テンプレートの有無
Bash なし
Batch なし
C# あり
F# あり
JavaScript なし
PHP なし
PowerShell なし
Python なし
TypeScript なし

IoT Hub (EventHub)

IoT Hub が IoT Hub (Event Hub) から新しいイベントを受信すると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript

IoT Hub (ServiceBusQueue)

指定した Service Bus キューにメッセージが追加されると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ○ (試験段階)

IoT Hub (ServiceBusTopic)

指定した Service Bus Topic にメッセージが追加されると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ○ (試験段階)

ManualTrigger

ポータルの [実行] ボタンから手動でトリガーされる

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ○ (試験段階)

QueueTrigger

指定した Azure Queue Storage にメッセージが追加されると実行される

開発言語

テンプレートの有無
Bash ○ (試験段階)
Batch ○ (試験段階)
C#
F#
JavaScript
PHP ○ (試験段階)
PowerShell ○ (プレビュー)
Python ○ (試験段階)
TypeScript ○ (試験段階)

SAS Token Generator

特定のコンテナーおよび BLOB 名について、Azure Storage の SAS トークンを生成する
※(JavaScript のみ) 外部ファイル プロバイダーにファイルが追加されると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript ○ (プレビュー)
PHP なし
PowerShell なし
Python なし
TypeScript なし

ScheduledMail

定期的にメールを送信する

開発言語

テンプレートの有無
Bash なし
Batch なし
C# あり (プレビュー)
F# なし
JavaScript なし
PHP なし
PowerShell なし
Python なし
TypeScript なし

SendGrid

特定のキューに新しい項目が追加されたときに確認メールを送信する

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ×

ServiceBusQueueTrigger

指定した Service Bus キューにメッセージが追加されると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ○ (試験段階)

ServiceBusTopicTrigger

指定した Service Bus Topic にメッセージが追加されると実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ×
Python ×
TypeScript ○ (試験段階)

TimerTrigger

指定したスケジュールで実行される

開発言語

テンプレートの有無
Bash ×
Batch ×
C#
F#
JavaScript
PHP ×
PowerShell ○ (プレビュー)
Python ×
TypeScript ○ (試験段階)

参考