AWS Lambda
開発者ガイド

AWS Lambda での Node.js コードの作成

Node.js では、Lambda によってサブセグメントを X-Ray に発行して、関数が行った他の AWS サービスへのダウンストリーム呼び出しに関する情報を表示できます。これを行うには、最初に AWS X-Ray SDK for Node.js をデプロイパッケージに含める必要があります。さらに、AWS SDK の require ステートメントを以下の方法でラップします。

const AWSXRay = require('aws-xray-sdk-core') const AWS = AWSXRay.captureAWS(require('aws-sdk'))

次に、前の例で定義された AWS 変数を使用して、X-Ray でトレースするサービスクライアントを初期化します。次に例を示します。

const s3 = new AWS.S3()

これらのステップに従うと、s3Client を使用して関数から行われた呼び出しがその呼び出しを表す X-Ray サブセグメントになります。例として、以下の Node.js 関数を実行し X-Ray でのトレースの様子を確認できます。

例 index.js

const AWSXRay = require('aws-xray-sdk-core') const AWS = AWSXRay.captureAWS(require('aws-sdk')) const s3 = new AWS.S3() exports.handler = async function(event) { return s3.listBuckets().promise() }

前述のコードによって発行されたトレースは以下のようになります。