Node.js 用の AWS Lambda ネイティブ・トレース
Node.js で記述された AWS Lambda 関数に対して、 Instana トレースを設定できます。
サポートされるランタイム
- Node.js 24.x
- Node.js 22.x
- Node.js 20.x
- Node.js 18.x
前提条件
Lambda監視用に AWS エージェントを設定し、 Instana が AWS Lambda ランタイム内部から収集できないバージョン情報および一部のランタイムメトリクスについて、必要な情報の収集を確実に行うようにします。
Node.js のLambda関数に対するトレース設定
Instana AWS Lambda 関数に対してトレースを有効にする複数の方法を提供します。 以下の設定オプションが利用可能です:
- Instana AutoTrace: Lambda関数のトレースを自動的に設定するには、 Instana の AutoTrace 設定を使用してください。 これがトレースを有効にするための推奨される方法です。
- Instana Lambdaパッケージ: 制限された環境では、 パッケージ
@instana/aws-lambdaを手動でインストールできます。 - Instana コンテナベースの関数向けLambdaレイヤー : コンテナベースの関数では、Dockerfileに Instana Lambdaレイヤーを含めることができます。
- Instana Serverless Framework とのトレース統合 : Serverless Framework を使用している場合は、トレースを統合するために
serverless.ymlを編集してください。
us-gov-west-1 および us-gov-east-1)では Lambda レイヤーを提供していません。 GovCloud リージョンで Instana を使用したい場合は、 Instana パッケージ( Node.js ) @instana/aws-lambda を手動でインストールし、 @ instana/aws-lambdaの手動インストールセクションに記載されている方法でハンドラー関数をラップしてください。Instana AutoTrace のセットアップ
Node.js 用の Instana AutoTrace セットアップでは、 Instana Lambda 層 およびカスタム関数ハンドラーを使用する AWS ラムダ関数をトレースできます。 この方法では、Lambda 関数コードを変更する必要はなく、構成だけを使用して行います。 この方法は、自動化するのにも、Lambda デプロイメント・パイプラインに組み込むのにも適しています。
Node.js Lambda 関数のトレースを有効にするには、以下のステップを実行します。
Instana Lambda レイヤーを関数に追加します。
- Lambda関数の設定ページで、ボックス
Layersをクリックし、次にをクリックしますAdd a layer。
- 表示されるポップアップで「レイヤーバージョンのARNを提供」を選択し、ご自身のリージョンに対応する Instana LambdaレイヤーのARNをコピーして貼り付けます。 Instana Lambdaレイヤーの適切なARNは、 Instana Lambda レイヤーセクションで確認できます。

- Lambda関数の設定ページで、ボックス
Lambda ハンドラーを構成します。 CommonJS を使用する場合は、ハンドラー
instana-aws-lambda-auto-wrap.handlerをに設定してください。 ES Modules ( ES6 ) を使用する場合は、ハンドラーinstana-aws-lambda-auto-wrap-esm.handlerを に設定してください(レイヤーバージョン 223 以降で利用可能)。ラムダハンドラーの設定を変更するには、構成ページで「基本設定」セクションを見つけます。

「編集」をクリックし、「ハンドラー」というラベルのフィールドに
instana-aws-lambda-auto-wrap.handlerを挿入します。
Instana のLambdaレイヤーは、デフォルトの Node.js ランタイムハンドラーを自動的に
index.handlerトリガーします。 カスタムハンドラーを使用する場合は、 Instana Lambda Layer に通知するため、環境変数 LAMBDA_HANDLER でハンドラーを指定してください。 設定が必要なすべての環境変数については、次のセクションを参照してください。Lambdaの設定ページに「Lambdaは instana-aws-lambda-auto-wrap.js ファイルを見つけられません」のような警告が表示される場合があります。設定ページに戻った際にも後からこの警告が表示される可能性があります。 この警告を無視して構いません。 ハンドラーは Instana Lambda レイヤーに含まれますが、AWS Lambda 構成ページでは考慮されません。
環境変数を設定する。 以下の環境変数を追加します。
INSTANA_ENDPOINT_URLこの変数は、 サーバー レス監視のエンドポイントです。 該当するリージョン用の、https://serverless-で始まる適切な値を使用していることを確認してください。INSTANA_AGENT_KEY: あなたのエージェントキー。LAMBDA_HANDLERカスタムハンドラーを設定してください。 メインファイルが でありmyModule.js、関数 をエクスポートする場合、環境myHandler変数を に設定してくださいmyModule.myHandler。 デフォルト値はindex.handlerです。
以下の例では、元のメインのラムダハンドラーは であるため
index.js、環境変数 LAMBDA_HANDLER を設定する必要はありません。
以下の例では、元のメインのLambdaハンドラーは であるため
server.js、環境変数LAMBDA_HANDLER を に設定する必要がありますserver.handler。
これらの環境変数の正しい値は、 Instana のインストール先へ移動し、...をクリックすることで取得することもできます。 詳細 -> エージェント -> Instana エージェントのインストール -> プラットフォーム: AWS -> テクノロジー: AWS Lambda.
Lambda関数の定義を保存します。

前述の手順はすべて、 AWS Webコンソールまたは、以下のような通常の AWS 管理ツールのいずれかを使用して実行できます:
以下に、AWS Lambdas の Instana 統合を自動化する場合に開始点として役立つ、aws CLI コマンドの例を示します。
# Do not copy and paste this verbatim!
# It will overwrite any previously defined collection of layers and
# environment variables.
aws --region $YOUR_REGION lambda update-function-configuration \
--function-name $YOUR_LAMBDA_FUNCTION_NAME \
--layers $INSTANA_LAYER_ARN \
--handler instana-aws-lambda-auto-wrap.handler \
--environment ""Variables={INSTANA_ENDPOINT_URL=... , INSTANA_AGENT_KEY=... , ...}""
手動 @instana/aws-lambda インストール
Instana Node.js コレクターを手動でインストールするには、次のコマンドを実行します:
npm install --save @instana/aws-lambda
関数のコードを 「ハンドラを手動でラップする」 セクションに従って修正してください。
ハンドラーの手動ラップ
自動ラップハンドラを使用しない場合、または使用に失敗した場合は、 Node.js AWS Lambda 関数のコードを少し修正し、 Instana トレースを有効にする必要があります。
@instana/aws-lambda (またはすべての依存関係) を除外できます。 Node.js のドキュメントのこのセクションを参照してください。Serverless Frameworkについては、 Serverless Framework のセクションも参照してください。- 行
const instana = require('@instana/aws-lambda');をハンドラー JavaScript ファイルの先頭に追加します。 instana.wrap()呼び出しでハンドラー関数をラップします。- AWS Lambda のドキュメントに記載されているように、 Instana バックエンドへの接続用に環境変数を設定してください。 InstanaAutoTrace
以下に、Node.js ベースの AWS Lambda に使用できる、さまざまなハンドラー関数スタイルの適用前および適用後の例をいくつか示します。
async 関数スタイルのハンドラー
async 関数をハンドラーとして使用する場合、ハンドラーは以下のようになります。
exports.handler = async (event, context) => {
// your code
};
結果のコードは以下のようになります。
const instana = require('@instana/aws-lambda');
exports.handler = instana.wrap(async (event, context) => {
// your code
}); // <- don't forget the closing ) for the instana.wrap(
promise スタイルの Lambda ハンドラー
promise スタイルのハンドラーを使用する場合、ハンドラーは以下のようになります。
exports.handler = (event, context) => {
// your code, which returns a promise
};
結果のコードは以下のようになります。
const instana = require('@instana/aws-lambda');
exports.handler = instana.wrap((event, context) => {
// your code, which returns a promise
}); // <- don't forget the closing ) for the instana.wrap(
callback スタイルの Lambda ハンドラー
callback スタイルのハンドラーを使用する場合、ハンドラーは以下のようになります。
exports.handler = (event, context, callback) => {
// your code
};
結果のコードは以下のようになります。
const instana = require('@instana/aws-lambda');
exports.handler = instana.wrap((event, context, callback) => {
// your code
}); // <- don't forget the closing ) for the instana.wrap(
構成オブジェクト
ハンドラをラップする際、最初の引数としてオプションの設定オブジェクトを渡すこともできます:
exports.handler = instana.wrap({
// ... your configuration, for example:
tracing: {
stackTraceLength: 10
}
},
async (event, context) => {
// your code
});
ネイティブ ラムダトレース ( agentHost、 agentPort 、 reportUnhandledPromiseRejectionsなど) でサポートされない構成値は、サイレントに無視されます。
なお、セクション「 追加環境変数」 に記載されている環境変数や、 Node.js の設定ページに記載されている環境変数のほとんどを使用することも可能です。
Instana コンテナベースの関数向けラムダレイヤー
チームがコンテナベースのLambdaデプロイを使用している場合、当社のベースコンテナを Docker Hub で icr.io/instana/aws-lambda-nodejs 利用するか、Dockerfile に以下のスニペットを含め、 ビルド時の引数を適切なバージョンに設定できます。
Instana 現在、 x86_64 アーキテクチャのみをサポートしています。
この画像は、 FedRAMP-compliant 環境での使用を意図したものではありません。
# This is the container image that delivers Instana's monitoring capabilities.
# It will not become the base image for your Lambda container image, it just provides a few files.
FROM icr.io/instana/aws-lambda-nodejs:latest as instana-layer
# This is the actual base image for your Lambda container image. You can also use any other base image that is suitable
# for container image based Lambda functions.
FROM public.ecr.aws/lambda/nodejs:14
# Copy Instana's Node.js monitoring components into your Lambda container image.
COPY --from=instana-layer /opt/extensions/ /opt/extensions/
COPY --from=instana-layer /opt/nodejs/ /opt/nodejs/
# The remainder of your Dockerfile, as it was without adding the Instana layer. The following is just an example:
COPY index.js package.json package-lock.json /var/task/
WORKDIR /var/task
RUN npm install
# Override the CMD. This can also be done as a parameter override outside of the Dockerfile, for example in the AWS console.
# If you use ES modules, use CMD [ "instana-aws-lambda-auto-wrap-esm.handler" ] instead.
CMD [ "instana-aws-lambda-auto-wrap.handler" ]
icr.io/instana/aws-lambda-nodejs:latestの代わりに、 @instana/aws-lambda 1.137.2 以上の特定のバージョンの Instana npm モジュールを使用することもできます ( ログの変更を参照)。以下に例を示します。
FROM icr.io/instana/aws-lambda-nodejs:1.140.1 as instana-layer
あるいは、最新のマイナー/パッチ・リリースを考慮しながら、メジャー・バージョンのみをピン留めすることができます。
FROM icr.io/instana/aws-lambda-nodejs:1 as instana-layer
icr.io/instana/aws-lambda-nodejs の将来のバージョンでは、古い ラムダNode.js ランタイムのサポートが除去されます。 例えば、バージョン icr.io/instana/aws-lambda-nodejs:2.0.0以降、 nodejs8.x のサポートは廃止されます。 古い ラムダランタイムを使用する場合は、メジャー・バージョンをピン留めすることをお勧めします。Instana トレースと Serverless Framework の統合
Instana トレースを Serverless Framework に統合するために編集 serverless.yml してください。 以下の手順に従います。
リストからレイヤーARN をコピーし、対象の関数定義の layersセクションにARNを追加します。
環境変数
INSTANA_AGENT_KEY、INSTANA_ENDPOINT_URLおよびを追加しますLAMBDA_HANDLER。 詳細については、 Instana AutoTrace setup を参照してください。
次の例を参照してください serverless.yml:
service: service-a
provider:
name: aws
runtime: nodejs16.x
stage: dev
region: us-east-2
functions:
with-layer:
environment:
INSTANA_ENDPOINT_URL: INSTANA_ENDPOINT_URL
INSTANA_AGENT_KEY: INSTANA_AGENT_KEY
LAMBDA_HANDLER: src/index.handler
layers:
- arn:aws:lambda:us-east-2:410797082306:layer:instana-nodejs:111
handler: instana-aws-lambda-auto-wrap.handler
サーバーレス オフライン
前提条件: 「 Instana トレースのServerless Frameworkとの統合 」セクションの手順1および手順2を確実に実行済みであることを確認してください。
Instana をServerless Frameworkおよび Serverless Offline と統合するために、ファイルを serverless.yml 編集してください。 以下の手順に従います。
- 環境
NODE_PATH変数を に設定してください$NODE_PATH:/opt/nodejs/node_modules。 - フィールドをセクション
useDockertruecustom内に設定する。 その後、 Instana レイヤーが自動的に Docker コンテナにダウンロードされます。
次の例を参照してください serverless.yml:
service: service-b
provider:
name: aws
runtime: nodejs12.x
stage: dev
region: us-east-2
plugins:
- serverless-offline
custom:
serverless-offline:
useDocker: true
functions:
with-serverless-offline:
environment:
NODE_PATH: $NODE_PATH:/opt/nodejs/node_modules
INSTANA_ENDPOINT_URL: INSTANA_ENDPOINT_URL
INSTANA_AGENT_KEY: INSTANA_AGENT_KEY
LAMBDA_HANDLER: src/index.handler
layers:
- arn:aws:lambda:us-east-2:410797082306:layer:instana-nodejs:111
handler: instana-aws-lambda-auto-wrap.handler
サーバーレス Webpack
前提条件: 「 Instana トレースのServerless Frameworkとの統合 」セクションの手順1および手順2を確実に実行済みであることを確認してください。
Instana をServerless Frameworkおよび Serverless Webpack と統合するために、ファイルを serverless.yml 編集してください。
ターゲットのLambda関数定義に entrypoint 追加します。 エントリポイントは、元の Node.js Lambdaハンドラーであり、 Instana Lambdaレイヤーによって自動的にトリガーされます。 詳細については、 Instana AutoTrace setup を参照してください。
次の例を参照してください serverless.yml:
service: service-c
provider:
name: aws
runtime: nodejs12.x
stage: dev
region: us-east-2
plugins:
- serverless-webpack
package:
individually: true
functions:
with-serverless-webpack:
environment:
INSTANA_ENDPOINT_URL: INSTANA_ENDPOINT_URL
INSTANA_AGENT_KEY: INSTANA_AGENT_KEY
LAMBDA_HANDLER: src/index.handler
layers:
- arn:aws:lambda:us-east-2:410797082306:layer:instana-nodejs:110
handler: instana-aws-lambda-auto-wrap.handler
entrypoint: src/index.handler
注記:
最新のバージョンを使用する必要があります
serverless-webpack。サーバーレス環境では、 AWS System Manager パラメータストア (SSM) の使用が推奨されます。これにより、 Instana エージェントキーを平文で
serverless.yml. 詳細については、 Serverless Framework ブログをご覧ください。
Instana Lambda レイヤー
Node.js レイヤーには、 InstanaAWS Lambda 拡張機能が含まれています。 監視データとトレースは、 Instana Lambda拡張機能にローカルでオフロードされ、その後 Instana バックエンドに転送されます。 この機能には以下の利点があります:ハンドラーが終了するとすぐに、Lambda関数は呼び出し元クライアントに応答します。 Instana バックエンドへのデータ送信を待つ必要はありません。
この機能は、メモリが256 MB以上で構成されたLambda関数に限定されます。 Instana Lambda 拡張機能を無効にするには、Lambda 関 INSTANA_DISABLE_LAMBDA_EXTENSION 数の環境変数を空でない文字列に設定します。
us-gov-west-1 および us-gov-east-1)では Lambda レイヤーを提供していません。 GovCloud リージョンで Instana を使用するには、 Instana パッケージ( Node.js ) @instana/aws-lambda を手動でインストールし、 @ instana/aws-lambdaの手動インストールセクションに記載されている方法でハンドラー関数をラップする必要があります。アーキテクチャ x86_64
サポート対象ランタイムに記載されているLambdaランタイム向けの AWS Lambda レイヤーの最新バージョンのARNは、リージョンごとに以下の通りです:
| リージョン | ARN | @instana/aws-lambda バージョン |
|---|---|---|
af-south-1 |
arn:aws:lambda:af-south-1:410797082306:layer:instana-nodejs:154 |
5.2.2 |
ap-east-1 |
arn:aws:lambda:ap-east-1:410797082306:layer:instana-nodejs:153 |
5.2.2 |
ap-east-2 |
arn:aws:lambda:ap-east-2:410797082306:layer:instana-nodejs:40 |
5.2.2 |
ap-northeast-1 |
arn:aws:lambda:ap-northeast-1:410797082306:layer:instana-nodejs:309 |
5.2.2 |
ap-northeast-2 |
arn:aws:lambda:ap-northeast-2:410797082306:layer:instana-nodejs:307 |
5.2.2 |
ap-northeast-3 |
arn:aws:lambda:ap-northeast-3:410797082306:layer:instana-nodejs:153 |
5.2.2 |
ap-south-1 |
arn:aws:lambda:ap-south-1:410797082306:layer:instana-nodejs:307 |
5.2.2 |
ap-south-2 |
arn:aws:lambda:ap-south-2:410797082306:layer:instana-nodejs:153 |
5.2.2 |
ap-southeast-1 |
arn:aws:lambda:ap-southeast-1:410797082306:layer:instana-nodejs:307 |
5.2.2 |
ap-southeast-2 |
arn:aws:lambda:ap-southeast-2:410797082306:layer:instana-nodejs:306 |
5.2.2 |
ap-southeast-3 |
arn:aws:lambda:ap-southeast-3:410797082306:layer:instana-nodejs:152 |
5.2.2 |
ap-southeast-4 |
arn:aws:lambda:ap-southeast-4:410797082306:layer:instana-nodejs:152 |
5.2.2 |
ap-southeast-5 |
arn:aws:lambda:ap-southeast-5:410797082306:layer:instana-nodejs:101 |
5.2.2 |
ap-southeast-6 |
arn:aws:lambda:ap-southeast-6:410797082306:layer:instana-nodejs:22 |
5.2.2 |
ap-southeast-7 |
arn:aws:lambda:ap-southeast-7:410797082306:layer:instana-nodejs:58 |
5.2.2 |
ca-central-1 |
arn:aws:lambda:ca-central-1:410797082306:layer:instana-nodejs:305 |
5.2.2 |
ca-west-1 |
arn:aws:lambda:ca-west-1:410797082306:layer:instana-nodejs:133 |
5.2.2 |
cn-north-1 |
arn:aws-cn:lambda:cn-north-1:107998019096:layer:instana-nodejs:79 |
5.2.1 |
cn-northwest-1 |
arn:aws-cn:lambda:cn-northwest-1:107998019096:layer:instana-nodejs:83 |
5.2.1 |
eu-central-1 |
arn:aws:lambda:eu-central-1:410797082306:layer:instana-nodejs:283 |
5.2.2 |
eu-central-2 |
arn:aws:lambda:eu-central-2:410797082306:layer:instana-nodejs:129 |
5.2.2 |
eu-north-1 |
arn:aws:lambda:eu-north-1:410797082306:layer:instana-nodejs:283 |
5.2.2 |
eu-south-1 |
arn:aws:lambda:eu-south-1:410797082306:layer:instana-nodejs:129 |
5.2.2 |
eu-south-2 |
arn:aws:lambda:eu-south-2:410797082306:layer:instana-nodejs:129 |
5.2.2 |
eu-west-1 |
arn:aws:lambda:eu-west-1:410797082306:layer:instana-nodejs:283 |
5.2.2 |
eu-west-2 |
arn:aws:lambda:eu-west-2:410797082306:layer:instana-nodejs:283 |
5.2.2 |
eu-west-3 |
arn:aws:lambda:eu-west-3:410797082306:layer:instana-nodejs:283 |
5.2.2 |
il-central-1 |
arn:aws:lambda:il-central-1:410797082306:layer:instana-nodejs:126 |
5.2.2 |
me-central-1 |
arn:aws:lambda:me-central-1:410797082306:layer:instana-nodejs:128 |
5.2.2 |
me-south-1 |
arn:aws:lambda:me-south-1:410797082306:layer:instana-nodejs:128 |
5.2.2 |
mx-central-1 |
arn:aws:lambda:mx-central-1:410797082306:layer:instana-nodejs:56 |
5.2.2 |
sa-east-1 |
arn:aws:lambda:sa-east-1:410797082306:layer:instana-nodejs:282 |
5.2.2 |
us-east-1 |
arn:aws:lambda:us-east-1:410797082306:layer:instana-nodejs:282 |
5.2.2 |
us-east-2 |
arn:aws:lambda:us-east-2:410797082306:layer:instana-nodejs:282 |
5.2.2 |
us-west-1 |
arn:aws:lambda:us-west-1:410797082306:layer:instana-nodejs:282 |
5.2.2 |
us-west-2 |
arn:aws:lambda:us-west-2:410797082306:layer:instana-nodejs:282 |
5.2.2 |
つまり、そのパターンは (中国における arn:aws:lambda:${region}:410797082306:layer:instana-nodejs:${layer-version}AWS 地域 arn:aws-cn:lambda:${region}:107998019096:layer:instana-nodejs:${layer-version} の場合は) である。
常に最新バージョンを使用し、レイヤーのバージョンを定期的に更新してください。これにより、レイヤーの新バージョン公開時に提供する新機能や修正の恩恵を受けられます。
アーキテクチャ arm64
| リージョン | ARN | @instana/aws-lambda バージョン |
|---|---|---|
af-south-1 |
arn:aws:lambda:af-south-1:410797082306:layer:instana-nodejs-arm64:127 |
5.2.2 |
ap-east-1 |
arn:aws:lambda:ap-east-1:410797082306:layer:instana-nodejs-arm64:127 |
5.2.2 |
ap-east-2 |
arn:aws:lambda:ap-east-2:410797082306:layer:instana-nodejs-arm64:39 |
5.2.2 |
ap-northeast-1 |
arn:aws:lambda:ap-northeast-1:410797082306:layer:instana-nodejs-arm64:166 |
5.2.2 |
ap-northeast-2 |
arn:aws:lambda:ap-northeast-2:410797082306:layer:instana-nodejs-arm64:166 |
5.2.2 |
ap-northeast-3 |
arn:aws:lambda:ap-northeast-3:410797082306:layer:instana-nodejs-arm64:127 |
5.2.2 |
ap-south-1 |
arn:aws:lambda:ap-south-1:410797082306:layer:instana-nodejs-arm64:166 |
5.2.2 |
ap-south-2 |
arn:aws:lambda:ap-south-2:410797082306:layer:instana-nodejs-arm64:127 |
5.2.2 |
ap-southeast-1 |
arn:aws:lambda:ap-southeast-1:410797082306:layer:instana-nodejs-arm64:166 |
5.2.2 |
ap-southeast-2 |
arn:aws:lambda:ap-southeast-2:410797082306:layer:instana-nodejs-arm64:166 |
5.2.2 |
ap-southeast-3 |
arn:aws:lambda:ap-southeast-3:410797082306:layer:instana-nodejs-arm64:127 |
5.2.2 |
ap-southeast-4 |
arn:aws:lambda:ap-southeast-4:410797082306:layer:instana-nodejs-arm64:127 |
5.2.2 |
ap-southeast-5 |
arn:aws:lambda:ap-southeast-5:410797082306:layer:instana-nodejs-arm64:84 |
5.2.2 |
ap-southeast-6 |
arn:aws:lambda:ap-southeast-6:410797082306:layer:instana-nodejs-arm64:22 |
5.2.2 |
ap-southeast-7 |
arn:aws:lambda:ap-southeast-7:410797082306:layer:instana-nodejs-arm64:57 |
5.2.2 |
ca-central-1 |
arn:aws:lambda:ca-central-1:410797082306:layer:instana-nodejs-arm64:166 |
5.2.2 |
ca-west-1 |
arn:aws:lambda:ca-west-1:410797082306:layer:instana-nodejs-arm64:111 |
5.2.2 |
cn-north-1 |
arn:aws-cn:lambda:cn-north-1:107998019096:layer:instana-nodejs-arm64:75 |
5.2.2 |
cn-northwest-1 |
arn:aws-cn:lambda:cn-northwest-1:107998019096:layer:instana-nodejs-arm64:81 |
5.2.2 |
eu-central-1 |
arn:aws:lambda:eu-central-1:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
eu-central-2 |
arn:aws:lambda:eu-central-2:410797082306:layer:instana-nodejs-arm64:124 |
5.2.2 |
eu-north-1 |
arn:aws:lambda:eu-north-1:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
eu-south-1 |
arn:aws:lambda:eu-south-1:410797082306:layer:instana-nodejs-arm64:124 |
5.2.2 |
eu-south-2 |
arn:aws:lambda:eu-south-2:410797082306:layer:instana-nodejs-arm64:124 |
5.2.2 |
eu-west-1 |
arn:aws:lambda:eu-west-1:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
eu-west-2 |
arn:aws:lambda:eu-west-2:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
eu-west-3 |
arn:aws:lambda:eu-west-3:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
il-central-1 |
arn:aws:lambda:il-central-1:410797082306:layer:instana-nodejs-arm64:122 |
5.2.2 |
me-central-1 |
arn:aws:lambda:me-central-1:410797082306:layer:instana-nodejs-arm64:124 |
5.2.2 |
me-south-1 |
arn:aws:lambda:me-south-1:410797082306:layer:instana-nodejs-arm64:124 |
5.2.2 |
mx-central-1 |
arn:aws:lambda:mx-central-1:410797082306:layer:instana-nodejs-arm64:55 |
5.2.2 |
sa-east-1 |
arn:aws:lambda:sa-east-1:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
us-east-1 |
arn:aws:lambda:us-east-1:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
us-east-2 |
arn:aws:lambda:us-east-2:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
us-west-1 |
arn:aws:lambda:us-west-1:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
us-west-2 |
arn:aws:lambda:us-west-2:410797082306:layer:instana-nodejs-arm64:163 |
5.2.2 |
SSMサポート
レイヤー instana-nodejs/@instana/aws-lambda@1.138.0のバージョン 99 から使用可能です。
AWS SSM (System Manager) パラメーター・ストアを介して Instana エージェント・キーを指定することもできます。
- Instana エージェント・キーを SSM パラメーター・ストアに追加します。 パラメーター名を覚えておくか、コピーしてください。
- 環境変数から
INSTANA_AGENT_KEYを削除します。 - コピーしたパラメーター名を使用して、環境変数に
INSTANA_SSM_PARAM_NAMEを追加します。 - パラメーターを「SecureString」として追加した場合は、
INSTANA_SSM_DECRYPTION=trueも設定する必要があります。 「ストリング」型を使用した場合は、追加の変数を設定する必要はありません。
Lambda 関数での Instana API の使用
@instana/collectorを使用する単純なバニラ Node.js アプリの場合と同様に、ラムダコードで Instana API 全体にアクセスして使用することができます。
Instana Node.js のLambdaレイヤーと自動ラップハンドラーを使用する場合、コードに次の行を追加する必要があります:
const instana = require('@instana/aws-lambda');
手動でラップする場合、その行は既にLambdaハンドラーファイル内に存在します。
@instana/aws-lambda 関係として ファイル package.json に追加しないでください。 このパッケージは、 Instana Node.js Lambda レイヤーによって提供されています。 依存関係として追加すると同時にLambdaレイヤーを使用することはサポートされていません。Lambda関数のコードが複数のソースファイルで構成されている場合、他のソースコードファイルに const instana = require('@instana/aws-lambda'); 次のステートメントを追加することで、 Instana、 Node.js、 API にアクセスできます。
追加の環境変数
| 名前 | Default | 値 | 説明 |
|---|---|---|---|
INSTANA_DISABLE_LAMBDA_EXTENSION |
false |
空でない任意のストリング。 | ラムダ拡張を無効にするかどうか。 |
INSTANA_ENABLE_LAMBDA_TIMEOUT_DETECTION |
false |
trueまたはfalse |
この機能はデフォルトで無効になっています。タイムアウトハンドラの実行が別の実行で発生する可能性があるためです。 デバッグ目的でのみ使用してください。 これを有効にすると、意図しない結果を招く可能性があります。 では、自己責任で有効にしてください。 |
INSTANA_MINIMUM_LAMBDA_TIMEOUT_FOR_TIMEOUT_DETECTION_IN_MS |
2000 年 | タイムアウト(ミリ秒単位) | 最小タイムアウト検出時間をミリ秒単位で増加させる。 |
INSTANA_DEBUG |
false |
trueまたはfalse |
デバッグモードを有効にします。 |
INSTANA_TIMEOUT |
1000 |
数値 | Instana バックエンドへのデータ送信タイムアウト(ミリ秒単位) |