• ログイン無料アカウント

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

AWS Lambdaのモニタリング統合

重要

AWS CloudWatch Metric Streams統合を有効にして、カスタムネームスペースを含むAWSサービスからのすべてのCloudWatchメトリクスをモニターします。個別の統合は、もはや推奨されるオプションではありません。

New Relic infrastructure integrations には、AWS Lambda のデータを New Relic にレポートするためのインテグレーションが含まれています。このドキュメントでは、この統合を有効にする方法と、レポート可能なデータについて説明します。

また、より詳細なLambdaのモニタリング機能も提供しています 。詳しくは、 New Relic Serverless monitoring for AWS Lambda をご覧ください。

機能

AWS Lambda は、バックエンドのウェブ開発者向けのゼロアドミニストレーションのコンピュートプラットフォームです。AWSクラウド上であなたに代わってコードを実行し、きめ細かな料金体系を提供します。

Lambda関数は、特定のイベントが発生したときに実行されるカスタムコードの一部です。特定のLambda関数を起動するイベントを識別するために、AWS Lambdaのユーザーはイベントソースマッピングを定義します。オプションとして、エイリアスを使用してLambda関数の特定のバージョンを指すことができます。

NewRelicのAWSLambda統合は、呼び出しカウント、エラーカウント、関数タイマー、その他のメトリックなどのデータをレポートします。事前に作成されたダッシュボードでLambdaデータを表示したり、 カスタムクエリやグラフを作成したりできます。

統合をアクティブ化する

このインテグレーションを有効にするには、標準手順に従い、AWSサービスをNew Relicに接続します

重要

カスタムキーを使用して環境変数を暗号化している場合、CloudtrailコンソールでKMS復号化エラーが表示されるようになることがあります。これは、ラムダを取得するために使用される API が、常に環境変数の情報をレスポンスの一部として取得しようとするためです。New Relic はこの情報を受け取ったり保存したりしません。

構成とポーリング

設定オプションを使用し、ポーリングの頻度を変更し、データを絞り込むことができます。

デフォルト ポーリング AWS Lambdaインテグレーションの情報です。

  • New Relicのポーリング間隔:5分
  • Amazon CloudWatchデータ間隔:1分

データを見つけて使用する

統合データを見つけるには、 one.newrelic.com > Infrastructure> AWS にアクセスし、Lambda統合リンクの1つを選択します。

ServerlessSampleイベントタイプを使用してデータをクエリおよび探索できます。 providerの値はLambdaRegionLambdaFunction 、およびLambdaFunctionAliasです。

データの利用方法については、 統合データの理解と利用 を参照してください。

メトリックデータ

この統合では、以下のメトリクスを収集します。これらのメトリクスの詳細については、 Amazon's Lambda documentation を参照してください。

機能とエイリアス

Lambda関数とエイリアスデータはServerlessSampleイベントタイプにアタッチされ、 provider値はそれぞれLambdaFunctionLambdaFunctionAliasです。

さらに、 AWS CloudFrontを使用してクライアントに近いAWSの場所で関数を実行し、フィルターがLambda @ Edgeメトリックを収集できるようにした場合、これらのデータはプロバイダー値でServerlessSampleイベントタイプにアタッチされますLambdaEdgeFunctionの。

名前

説明

concurrentExecutions

カスタム同時実行制限が指定されている関数でのみ使用できます。バージョンやエイリアスには適用されません。ある時点での特定の関数の同時実行の合計を測定します。一定期間に渡って集計された場合は、平均的な指標と見なす必要があります。

deadLetterErrors

関数が、設定されたデッドレターキューに失敗したイベントペイロードを書き込めなかった回数を測定します。これは、以下のいずれかが原因と考えられます。

  • パーミッションエラー
  • ダウンストリームサービスからのスロットル
  • リソースの設定ミス
  • タイムアウト

duration

呼び出しの結果として関数コードが実行を開始してから、実行を停止するまでのウォールクロックの経過時間をミリ秒単位で測定します。(このメトリックは、廃止されたLatencyメトリックに代わるものです。) 可能な最大データポイント値は、関数のタイムアウト構成です。請求された持続時間は、最も近い100ミリ秒に切り上げられます。AWS Lambdaは、これらのメトリクスが0以外の値を持つ場合にのみCloudWatchに送信することに注意してください。

edge-region

関数が実行されるAWSリージョンです。Lambda@Edgeサービスで実行される関数の場合のみ。

errors

関数内のエラー(応答コード4XX)により失敗した呼び出しの数を測定します。これは、廃止された ErrorCount メトリックに代わるものです。失敗した呼び出しは、成功した再試行のトリガーとなる場合があります。これには以下が含まれます。

  • 例外処理(例:context.fail(error))。

  • コードが終了する原因となる未処理の例外

  • メモリ不足の例外

  • タイムアウト

  • パーミッションエラー

    これには、起動率がデフォルトの同時接続数制限を超えたために失敗した起動(エラーコード429)や、内部サービスのエラーによる失敗(エラーコード500)は含まれません。

invocations

イベントまたは呼び出しAPIコールに応答して、関数が呼び出された回数を測定します。これは、廃止されたRequestCountメトリックに代わるものです。これには、成功した呼び出しと失敗した呼び出しが含まれますが、スロットルされた試みは含まれません。これは、その関数の課金されたリクエストに等しい。AWS Lambdaは、これらのメトリクスがゼロ以外の値を持つ場合にのみCloudWatchに送信することに注意してください。

iteratorAge

ストリームベースの呼び出し(Amazon DynamoDB ストリームまたは Kinesis ストリームによってトリガーされる関数)でのみ利用できます。処理されたレコードの各バッチについて、最後のレコードの年齢をミリ秒単位で測定します。Ageは、Lambdaがバッチを受信した時刻と、バッチの最後のレコードがストリームに書き込まれた時刻の差です。

throttles

呼び出し率が顧客の同時接続制限を超えたためにスロットルされたLambda関数の呼び出し試行回数を測定します(エラーコード429)。失敗した呼び出しは、成功した再試行のトリガーとなる場合があります。

地域

ラムダリージョンデータは、 provider値がLambdaRegionServerlessSampleイベントタイプに関連付けられています。

名前

説明

concurrentExecutions

アカウント内のすべての関数の集約されたメトリックとして出力されます。ある時点での、特定の機能の同時実行の合計を測定します。一定期間に渡って集計された場合は、平均的な指標と見なす必要があります。

unreservedConcurrentExecutions

アカウント内のすべての関数の集約メトリックとしてのみ発行されます。カスタム同時実行の制限が指定されていない関数の同時実行の合計を表します。一定期間に渡って集約された場合は、平均的な指標と見なす必要があります。

在庫データ

EOL通知

2022年3月以降、クラウド統合用のインベントリデータなど、いくつかの機能のサポートを終了します。この移行に簡単に備える方法など、詳細については、 ExplorersHubの投稿をご覧ください。

本統合では、以下のインベントリデータをサポートしています。インベントリデータについては、 統合データの理解 を参照してください。

aws/lambda/function/

このエンティティは、Lambda関数のインベントリデータを記述します。可能な値の詳細については、 Amazon's documentation for FunctionConfiguration を参照してください。

名前

説明

codeSha256

機能展開パッケージのSHA256ハッシュ。

codeSize

アップロードされた機能の.zipファイルのサイズ(バイト)です。

deadLetterArn

デッドレターキューとして指定されているAmazon SQSキューまたはAmazon SNSトピックのARNです。

description

ユーザーが提供した機能の説明です。

functionArn

機能に割り当てられたARNです。

functionName

関数の名前です。

handler

関数の実行を開始するためにLambdaが呼び出す関数です。

kmsKeyArn

関数の環境変数を暗号化するために使用される KMS キーです。顧客が管理するCMKを設定している場合にのみ返されます。

lastModified

この機能が最後に更新されたときのタイムスタンプです。

layers

機能層のARNのリストです。

masterArn

Lambda@Edge機能の場合は、マスター機能のARN。

memorySize

この機能に設定されているメモリサイズ(MB)です。

revisionId

関数またはエイリアスの最新の更新されたリビジョンを表します。

role

Lambdaが他のAWSリソースにアクセスするための関数を実行する際に想定するIAMロールのARNです。

runtime

Lambda関数の実行環境です。

timeout

Lambdaが関数を終了させるべき関数実行時間です。

tracingMode

ラムダ関数に関連するトレースモードです。

version

ラムダ関数のバージョンです。

vpcId

ラムダ機能に関連するVPC ID。

vpcSecurityGroupsIds

Lambda関数に関連付けられたセキュリティグループIDのリストです。

vpcSubnetIds

ラムダ関数に関連するサブネットIDのリスト。

aws/lambda/alias/

このエンティティは、Aliasのインベントリデータを記述します。

名前

説明

aliasArn

ラムダ関数のARNで、エイリアス名をサフィックスにして修飾されたもの。

aliasName

エイリアス名。

description

エイリアスの説明。

functionName

エイリアスが指す関数名。

functionVersion

エイリアスの対象となる関数のバージョン

revisionId

エイリアスを更新したときに変更される一意の識別子です。

routingConfig

エイリアスのルーティング設定です。

aws/lambda/region/

このエンティティは、Lambda地域のインベントリデータを記述します。

名前

説明

concurrentExecutions

リージョンごとの関数の同時実行数。

aws/lambda/event-source-mapping/

このエンティティは、イベントソース(Kinesis ストリーム、SQS キュー、DynamoDB ストリームなど)と AWS Lambda 関数の間のマッピングを記述します。可能な値についての詳細なドキュメントは、 Amazon's documentation for EventSourceMappingConfiguration を参照してください。

名前

説明

batchSize

AWS Lambdaが関数を起動した時点で、イベントソースから取得する最大のレコード数です。

eventSourceArn

イベントのソースとなるAmazon KinesisストリームのARN。

functionArn

AWS Lambdaがストリーム上のイベントを検知した際に呼び出すLambda関数。

lastModified

イベントマッピングが最後に更新された時間を示すUTC時間の文字列です。

state

イベントソースのマッピングの状態です。

stateTransitionReason

最後の状態変化の原因、 User initiatedまたはLambda initiated

uuid

マッピングに割り当てられたAWS Lambdaの不透明な識別子です。

Copyright © 2022 New Relic Inc.