チュートリアル の使用 AWS Lambda のプロジェクト AWS Toolkit for Visual Studio - AWS Toolkit for Visual Studio

英語の翻訳が提供されている場合で、内容が矛盾する場合には、英語版がオリジナルとして取り扱われます。翻訳は機械翻訳により提供されています。

チュートリアル の使用 AWS Lambda のプロジェクト AWS Toolkit for Visual Studio

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

の前提条件および設定に関する情報は、 AWS Toolkit for Visual Studio、を参照 AWS Toolkit for Visual StudioでのAWS Lambdaテンプレートの使用.

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

  1. Visual Studioを開き、 ファイル メニュー、選択 新規プロジェクト.

  2. Visual Studio 2017 の場合: :

    新規プロジェクト ダイアログ ボックス、展開 インストール済み、展開 視覚C#を選択し、 AWS Lambda(AWSラムダ).

    Visual Studio 2019 の場合: :

    新規プロジェクト ダイアログボックスで、 言語プラットフォーム、および プロジェクトタイプ ドロップダウンボックスは「すべて...」に設定され、タイプされます。 オーズ ラムダ検索 フィールド。

    選択可能なプロジェクトには 2 つのタイプがあります。

    • AWS Lambda プロジェクトは、個々の Lambda 関数を開発およびデプロイするためのプロジェクトです。

    • AWS Serverless Applicationsプロジェクトの作成 Lambda サーバーレスで機能 AWS CloudFormation テンプレート。AWS サーバーレスアプリケーションでは、関数以上のものを定義できます。たとえば、データベースの作成や IAM ロールの追加などを、サーバーレスデプロイと同時に追加できます。AWS サーバーレスアプリケーションでは、一度に複数の関数をデプロイすることもできます。

  3. _を選択 AWS Lambdaプロジェクト(.NET Core - C#) テンプレート。

  4. Visual Studio 2017 の場合: :

    目的の 名前場所などを選択して、 OK.

    Visual Studio 2019 の場合: :

    をクリック 次へ. 次のダイアログで、目的の 名前場所などを選択して、 作成.

  5. プロジェクトタイプを選択した後、設計図を選択します。対象: AWS Lambdaプロジェクト(.NET Core)ブループリントを選択 ページには、 Lambda 機能テンプレート。

    
                  AWS Lambda プロジェクトの設計図
  6. のタイプを選択 Lambda 開発したい機能を選択し、 終了 ビジュアル スタジオ プロジェクトを作成します。これでプロジェクトの構造とコードを確認できるようになりました。

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

プロジェクトの一部として作成される、aws-lambda-tools-defaults.json ファイルを確認します。このファイルでオプションを設定できます。オプションはデフォルトでは Lambda ツールが読み取ります。Visual Studio で作成されたプロジェクトテンプレートは、これらのフィールドの多くをデフォルト値を使用して設定します。ここで関数ハンドラを指定します。そのため、ウィザードで設定する必要はありません。ただし、関数、クラス、アセンブリの名前を変更した場合は、aws-lambda-tools-defaults.json ファイルでフィールドを更新する必要があります。

{ "profile":"default", "region" : "us-east-2", "configuration" : "Release", "framework" : "netcoreapp1.0", "function-runtime":"dotnetcore1.0", "function-memory-size" : 256, "function-timeout" : 30, "function-handler" : "BlogExample::BlogExample.Function::FunctionHandler" }

この aws-lambda-tools-default.json ファイルを使用する場合、Lambda ツールが関数をデプロイするために必要なもので、残っているのは、Lambda 関数と IAM ロールの名前です。

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

Publish to ( への発行)Lambda

関数を に発行するにはLambda:

  1. ソリューション エクスプローラー、プロジェクトを右クリックし、 AWS Lambdaに公開.

    
                  Visual StudioプロジェクトをAWS Lambdaに公開する
  2. Lambda関数のアップロード ページ、内 機能名関数の名前を入力するか、以前に公開した関数を選択して再公開します。次に 次へ.

    
                  Lambda機能の画面をアップロード
  3. 高度な機能の詳細 ページで、フィールドを次のように設定します。

    • 必須。 以下を提供する ロール名 アカウントに関連付けられた役割の。AWS 管理ポリシーまたは独自の管理ポリシーに基づいて、既存のロールまたは新しいロールを選択します。このロールは、関数内のコードによって行われる AWS のサービスコールに認証情報を提供するために使用されます。あなたのアカウントには、IAM ListPoliciesアクション、または ロール名 リストが空になり、続行できなくなります。

    • (オプション) Lambda関数が Amazon VPCで、サブネットとセキュリティ グループを選択します。

    • (オプション) 環境変数を設定します。 Lambda 機能のニーズ。キーは、デフォルトのサービスキーで自動的に暗号化されます (無料)。または、AWS KMS キーを指定することもできます (料金がかかります)。KMS(KMS) は、データの暗号化に使用する暗号化キーを作成および制御するために使用できるマネージド サービスです。Nutanixの AWS KMS キーを選択すると、リストから選択できます。

  4. 選択 アップロード.

    
                  Advanced Function Details(高度な機能の詳細)ページでLambda機能の詳細を設定する
  5. は、 アップロード機能 は、機能のアップロード中に表示され、アップロードが完了すると自動的に閉じます。レポートを表示できるようにウィザードを開いたままにするには、 正常に完了するとウィザードを自動的に閉じる アップロードが完了する前に、フォームの下部に表示してください。レポートの表示を終了するには、ページを閉じます。

    
                  機能ページのアップロード
  6. 関数をアップロードした後、 機能 ページが開きます。ページの左側のタブを使用して関数をテストし、イベントソースを追加して、ログを表示します。_を使用 構成 ]タブで、VPCサブネットおよびセキュリティ グループ、メモリ、タイムアウト、環境変数を追加します。

    
                  機能のテストリクエストの例を示す機能ページ
  7. イベントソースを追加してAWSリソース( Amazon S3 バケット、 Amazon SNS トピック、または Amazon Kinesis Data Streams ストリーム)および Lambda 関数、選択 イベント ソース. これにより、 イベント ソースの追加 ページ。

    イベント ソースの追加 ページ、から ソースタイプ、適切なイベント ソースを選択し、 OK イベントソースを追加します。

    
                  イベント ソースの追加ページ
  8. 機能をテストするには、 リクエストの例、リクエストの例を選択します。

    
                  機能のテストリクエストの例を示す機能ページ
  9. テストを実行するには、 呼び出し.

    
                  テスト機能ページを呼び出す
  10. テストからの出力の表示 ログ出力.

    
                  機能試験出力ログ

後 Lambda 関数が公開され、すぐに使用できます。使用例については、以下を参照してください。 AWS Lambdaの使用方法の例.

Lambda 自動モニター Lambda 関数、メトリックのレポート Amazon CloudWatch. 機能の監視とトラブルシューティングについては、を参照してください。 Amazon CloudWatchを使用したAWS Lambda機能のトラブルシューティングと監視.