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

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

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

問題を作成する

AWS Lambdaのモニタリングの互換性と要件

AWS Lambdaのサーバーレス監視 を有効にする前に、 要件 を満たしていることを確認し、 AWSの使用料 が発生することを学んでください。

推奨されるAWS Lambda言語のランタイム

  • Node.js: nodejs12.xnodejs14.x
  • Python: python3.7python3.8python3.9
  • 移動: providedprovided.al2
  • Java: java8.al2java11
  • .NET Core: dotnetcore3.1

AWSはこれらの言語の古いランタイムも持っていますが、AWSは 、最新のLambda APIをこれらの古いランタイムでサポートすることを選択していません。古いランタイムへの統合には別の戦略が必要ですが、可能です。

PythonとNode.jsは、Lambdaエコシステムで群を抜いて最も人気のある言語です。 NodeおよびPython用のNewRelicLambdaレイヤーには、最新のNew Relic Agentバージョンが含まれており、箱から出してすぐに、最小限の構成で豊富なインストルメンテーションを提供します。

同様に、GoはNewRelicGoエージェントを使用します。最新のAWSLambdaAPIはAWS go1.xランタイムでサポートされていないため、セルフホスティングのGoラムダ関数をビルドすることをお勧めします。幸い、これはAWS Lambda SDKforGoによって十分にサポートされています。 New Relicは、エージェントモジュールを最新の状態に保つことをお勧めします。 3.9.0より古いバージョンのエージェントのサポートは制限されています。

パフォーマンスへの影響を最小限に抑えるために、Java と .NET Core では異なるアプローチを採用しています。New Relic はこれらのランタイム用に OpenTelemetry SDK を提供しています。このアプローチでは、統合するために少しだけコードが必要になります。

完全なLambdaインスツルメンテーションのために、Lambdaレイヤーに含まれる当社のエージェントの一部は、言語固有の AWS SDK に依存しています。AWS SDKが使用されていない場合、LambdaのデータはUI上で外部サービスの呼び出しとして表示され、最小限の詳細が表示されます。つまり、お客様の機能のインストゥルメンテーションを促進するためにAWS SDKに依存しています。

以下のサービスについては、"対象の" (Lambda関数名、SNSトピックARN、DynamoDBテーブル名など)のみが報告されます。Autoscaling、Athena、Batch、Cloud9、CodeBuild、DynamoDB、Greengrass、IoT、Kinesis(Streams、Firehose、Analytics、Video)、Lambda、Lex、Machine Learning、MQ、Redshift、Rekognition、S3、SES、SimpleDB、SNS、SQS、Storage Gateway、STS。

AWSのコストについて

AWS Lambdaのサーバーレスモニタリングを有効にすると、AmazonWebServicesの料金が発生する場合があります。 Lambdaデータをレポートするnewrelic-log-ingestion Lambda関数は、サードパーティサービスと見なされます。その使用に起因するAWSの料金は、お客様の責任となります。

Lambda Extension を使用すると、New Relic が収集した遠隔測定の CloudWatch Logs インジェスト料金を回避することができます。

Copyright © 2022 New Relic Inc.