基本AWS Lambdaプロジェクト - AWS Toolkit for Visual Studio

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

基本AWS Lambdaプロジェクト

の使用AWS LambdaVisual Studio 用の .NET Core プロジェクトテンプレートを使用すると、Microsoft .NET Core を使って Lambda 関数を作成できます。

の前提条件とセットアップの詳細については、AWS Toolkit for Visual Studio「」を参照してください。の使用AWSの Lambda テンプレートAWSToolkit for Visual Studio

Visual Studio .NET Core Lambda プロジェクトを作成する

組み込みの Lambda Visual Studio ブループリントにより、プロジェクトの迅速な初期化が可能になります。ブループリントは、機能をすばやくデモンストレーションするための定型ファイルと関数のセットであり、後で変更する際の出発点となります。

Lambda プロジェクトを作成するには

  1. Visual Studio を開き、[File (ファイル)] メニューで [New (新規)] を選択し、[Project (プロジェクト)] を選択します。

  2. 以下の いずれかを 実行します。

    • Visual Studio 2017 では、新しいプロジェクトダイアログボックス、拡張インストール済み、を展開します。Visual C#[] を選択して、AWSLambdaで、AWSLambda プロジェクト (.NET Core-C#)[] テンプレートを選択し、[] を選択します。OK

    • Visual Studio 2019 では、新しいプロジェクト] ダイアログボックスで、言語,プラットフォーム, およびプロジェクトタイプドロップダウンボックスが [すべて] に設定され、次のように入力します。aws lambda検索フィールド。次に、AWSLambda プロジェクト (.NET Core-C#)テンプレートを選択して [] を選択します。

  3. 以下の いずれかを 実行します。

    • Visual Studio 2017 では、名前「」と入力します。AWSLambda1で、目的のファイルを入力します。ロケーション[] を選択して [] を選択します。OK

    • Visual Studio 2019 では、名前「」と入力します。AWSLambda1で、目的のファイルを入力します。ロケーション[] を選択して [] を選択します。作成

  4. リポジトリの []設計図を選択する[] ページで、空の関数ブループリントを選択し、完了をクリックして Visual Studio プロジェクトを作成します。これでプロジェクトの構造とコードを確認できるようになりました。

プロジェクトファイルを確認する

レビューするプロジェクトファイルが 2 つあります。aws-lambda-tools-defaults.jsonそしてFunction.cs

次の例は、aws-lambda-tools-defaults.jsonファイル。プロジェクトの一部として作成されます。このファイルには、Lambda ツールがデフォルトで読み取るフィールドを使用して、ビルドオプションを設定できます。Visual Studio のプロジェクトテンプレートには、デフォルト値を持つこれらのフィールドの多くが含まれています。フィールド関数ハンドラーLambda 関数が実行されたときに実行されるメソッドを指定します。と指定すると関数ハンドラーフィールドに、パブリッシュウィザードにあらかじめ入力されています。関数、クラス、アセンブリの名前を変更した場合は、aws-lambda-tools-defaults.jsonファイルを開きます。

{ "Information": [ "This file provides default values for the deployment wizard inside Visual Studio and the AWS Lambda commands added to the .NET Core CLI.", "To learn more about the Lambda commands with the .NET Core CLI execute the following command at the command line in the project root directory.", "dotnet lambda help", "All the command line options for the Lambda command can be specified in this file." ], "profile": "default", "region": "us-east-2", "configuration": "Release", "framework": "netcoreapp3.1", "function-runtime": "dotnetcore3.1", "function-memory-size": 256, "function-timeout": 30, "function-handler": "AWSLambda1::AWSLambda1.Function::FunctionHandler" }

[] を確認するFunction.csファイルを開きます。Function.csは Lambda 関数としてエクスポーズできるように定義します。このFunctionHandlerは Lambda 関数が実行されたときに実行される Lambda 関数です。このプロジェクトでは、1 つの関数が定義されています。FunctionHandlerと呼んでいる。ToUpper()[] を入力テキストに表示します。

これでプロジェクトを Lambda に発行できるようになりました。

Lambda への発行

Lambda 機能がいつどのように呼び出されるかは、Lambda デプロイ自体の一部ではありません。Lambda はオンデマンド機能の「何」に過ぎません。

関数を Lambda に発行するには

  1. そのファイルにAWSエクスプローラウィンドウが開いていません。表示[] を選択してから、AWSエクスプローラ

  2. Eclipseソリューションエクスプローラー[] を選択してから、[] を選択します。への発行AWSLambda

  3. リポジトリの []Lambda 関数のアップロード[] ページで、次の操作を行います。

    
                  Lambda 関数のアップロード画面
    1. を使用する場合パッケージタイプで、Zip。ZIP ファイルはビルドプロセスの結果として作成され、Lambda にアップロードされます。もう一つパッケージタイプオプションはImageそしてチュートリアル: 基本的な Lambda プロジェクト Docker イメージの作成その代替案をガイドします。

    2. を使用する場合関数名で、Lambda インスタンスの表示名を入力します。この名前は、両方ともその参照名です。AWSVisual Studio 内のエクスプローラーだけでなく、AWS Management Consoleディスプレイ。

    3. (オプション)説明で、インスタンスとともに表示するテキストをAWS Management Console。

    4. [Next] (次へ) をクリックします。

  4. 高度な関数の詳細[] ページで、次の操作を行います。

    1. を使用する場合ロール名[] で、アカウントに関連付けられているロールを選択します。ロールは、任意の一時的な認証情報を提供します。AWS関数内のコードによって行われる、サービスコール。ロールがない場合は、新しいロールAWS管理ポリシー[] を選択してから、AWSLambdaBasicExecutionRoleこれは、最小限のアクセス権限を持つロールです。

      注記

      アカウントには IAM ListPolicies アクションを実行できるアクセス権限が必要です。この権限がない場合には、[Role Name (ロール名)] リストは空となり、続行できません。

    2. (オプション) Lambda 関数が Amazon VPC 上のリソースにアクセスする場合は、サブネットとセキュリティグループを選択します。

    3. (オプション) Lambda 関数が必要とする、環境変数を設定します。キーは、デフォルトのサービスキーで自動的に暗号化されます (無料)。または、AWS KMSキー、これには料金があります。KMS は、データの暗号化に使用される暗号化キーの作成と管理を行うために使用できる、マネージド型サービスです。AWS KMS キーがある場合は、リストから選択できます。

  5. [Upload] (アップロード) を選択します。

    -Uploading 関数関数のアップロード中にページが表示されるAWS。アップロード後にウィザードを開いたままにして、レポートを表示できるようにするには、オフにします。正常に完了したらウィザードを自動的に閉じるアップロードが完了する前に、フォームの下部にあります。

    関数がアップロードされると、Lambda 関数はライブ状態になります。-関数:ビューページが開き、新しい Lambda 関数の設定が表示されます。

  6. Lambda 関数を手動で呼び出すには、テスト関数タブ入力hello lambda!フリーテキスト入力フィールドで、呼び出し。大文字に変換されたテキストは、レスポンス

    
                  テスト関数を起動するページ

    もう一度開くことができます関数:にあるデプロイされたインスタンスをダブルクリックすると、いつでも表示できます。AWSエクスプローラAWS Lambdaノード。

  7. (オプション) Lambda 関数が正常にパブリッシュされたことをもう一度確認するには、AWS Management Console[Lambda] を選択します。コンソールには、先ほど作成した関数を含む、パブリッシュされた Lambda 関数がすべて表示されます。

    
                  Lamda 関数の表示AWSマネジメントコンソール

クリーンアップ

この例で開発を続行しない場合は、デプロイした関数を削除して、アカウント内の未使用のリソースに対して請求されないようにします。

関数を削除するには

  • AWSエクスプローラで、AWS Lambdaノードで、デプロイされたインスタンスのコンテキスト (右クリック) メニューを開き、[削除

次のステップ

この例では、.NET 3.1 マネージドランタイムを使用してプロジェクトを作成する方法を説明しました。Lambda 関数用の.NET 5.0 カスタムランタイムを使用してプロジェクトを作成する方法については、を参照してください。で.NET 5を探るAWSToolkit for Visual Studio

その他のユースケースについては、を参照してください。の使用方法の例AWSLambda

Lambda は自動的に Lambda 関数をモニタリングし、Amazon CloudWatch を通じてメトリクスを報告します。関数のモニタリングおよびトラブルシューティングを行うには、「」を参照してください。トラブルシューティングとモニタリングAWSAmazon CloudWatch を使用したLambda 関数