Datadog サーバーレス CLI

Datadog サーバーレス CLI

この機能は公開ベータ版です。質問や問題がございましたら、リポジトリに問題を登録してお知らせください。

CLI を使用して、AWS Lambda 関数を Datadog でインスツルメントできます。現在、Python および Node.js ランタイムのみがサポートされています。

はじめに

次のコマンドを使用して、AWS 認証情報 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY をご使用の環境で使用できるようにするか、AWS JS sdk でサポートされている認証方法のいずれかを使用します。


export AWS_ACCESS_KEY_ID="<ACCESS KEY ID>"
export AWS_SECRET_ACCESS_KEY="<ACCESS KEY>"

Datadog CI をダウンロードします。

コンフィギュレーション

コンフィギュレーションは JSON ファイルを使用して行われます。--config 引数を使用して datadog-ci.json を指定し、次のコンフィギュレーションファイル構造を指定します。

{
    "lambda": {
        "layerVersion": 10,
        "functions": ["arn:aws:lambda:us-east-1:000000000000:function:autoinstrument"],
        "region": "us-east-1",
        "tracing": true,
        "mergeXrayTraces": true,
        "forwarder": "arn:aws:lambda:us-east-1:000000000000:function:datadog-forwarder"
    }
}

コマンド

instrument を使用して、Datadog インスツルメンテーションを Lambda に適用します。このコマンドは、Datadog Lambda ライブラリを (Lambda レイヤーとして) インスツルメントされた Lambda 関数に自動的に追加し、そのコンフィギュレーションを変更します。

このコマンドは、既存の Lambda 関数で Datadog インスツルメンテーションを試す最も簡単な方法です。実稼働環境で使用するには、CI/CD パイプラインでこのコマンドを実行して、Lambda 関数がインスツルメンテーション用に常に更新されるようにします。

# ARN で指定された関数をインスツルメントします
datadog-ci lambda instrument --function arn:aws:lambda:us-east-1:000000000000:function:functionname --layerVersion 10

# 省略形を使用します
datadog-ci lambda instrument -f arn:aws:lambda:us-east-1:000000000000:function:functionname -v 10

# 名前で指定された複数の関数をインスツルメントします (--region を定義する必要があります)
datadog-ci lambda instrument -f functionname -f another-functionname -r us-east-1 -v 10

# すべての更新コマンドのドライラン
datadog-ci lambda instrument -f functionname -r us-east-1 -v 10 --dry

すべての引数:

引数省略形説明デフォルト
–function-fインスツルメントする Lambda 関数の ARN、または Lambda 関数の名前 (–region を定義する必要があります)
–region-r--function が ARN ではなく関数名で指定されている場合に使用するデフォルトのリージョン
–layerVersion-v適用する Datadog レイヤーのバージョン。これはランタイムによって異なります。最新のレイヤーバージョンを確認するには、JS または python datadog-lambda-layer リポジトリのリリースノートを確認してください。
–tracingLambda で dd-trace トレースを有効にするかどうかtrue
–mergeXrayTracesdd-trace トレースを AWS X-Ray トレースに結合するかどうか。API ゲートウェイスパンのトレースに役立ちます。false
–flushMetricsToLogsDatadog Forwarder を介してメトリクスを非同期に送信するかどうかtrue
–forwarderこの関数の LogGroup をアタッチする Datadog Forwarder の ARN。
–dry-dコマンドを実行している変更のプレビューが適用されます。false

コミュニティ

製品のフィードバックや質問については、Slack の Datadog コミュニティ#serverless チャンネルに参加してください。