• English日本語한국어
  • ログイン今すぐ開始

この機械翻訳は参考用に提供されます。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、 を参照してください。

問題を作成する

ステップ1: AWSとNew Relicのアカウントをリンクする

これは、 NewRelicのAWSLambdaモニタリングを有効にするための最初のステップです。

AWS アカウントを New Relic にリンクすると、AWS アカウントのインベントリを作成し、Lambda 関数の CloudWatch メトリクスを収集するアクセス許可を New Relic に付与することになります。AWS アカウント内のリソースは、構成情報で装飾された エンティティ エクスプローラーにエンティティとして表示されます。

Lambdaサーバーレス関数モニタリングが機能するには、 APIポーリングまたはメトリックストリームの統合が必要です。このアカウントのリンクを開始する前に、統合の選択を設定するか、CLIにAPIポーリング統合をインストールさせることができます。

この統合ステップでは、New Relic も保存します AWS Secrets Manager サービスで、テレメトリを New Relic アカウントに送信できるようにします。

推奨される方法: newrelic-lambda CLI

要件

当社のLambdaレイヤーを使ってサーバーレス監視を実現するには、以下のものが必要です。

CLI の詳細については、 CLI リポジトリを参照してください。

CLIとの統合

Lambdaサーバーレス関数のモニタリングにはAPIポーリングまたはメトリックストリームの統合が必要なため、統合が検出されない場合、CLIはAPIポーリングを自動的にインストールします。メトリックストリームが必要な場合は、CLIを実行する前に今すぐインストールしてください。

すべての要件が整ったら、ユーザー キーを使用して次のコマンドを実行し、AWS アカウントを New Relic アカウントにリンクします (強調表示された値をすべて置き換えます)。

newrelic-lambda integrations install --nr-account-id YOUR_NR_ACCOUNT_ID \
    --nr-api-key YOUR_NEW_RELIC_USER_KEY

newrelic-lambda CLI は New Relic を追加します セキュリティを強化するために 、AWS Secret Manager のシークレットとして。

ヒント

AWS Secrets ManagerにNew Relicのライセンスキーを保存する

あなたの New Relic に対してユーザーを識別および認証することで、ユーザーのテレメトリを New Relic アカウントに関連付けることができます。 テレメトリを送信する各関数は、この値にアクセスする必要があり、安全に管理する必要があります。AWS Secrets Manager はこれらの問題を解決します。

組織の都合でAWS Secrets Managerを使用できない場合や、リージョンごとに複数のシークレットを保存する必要がある場合は、ライセンスキーを設定する別の方法として、以下を参照してください。

代替方法

このドキュメントはインストールで役立ちましたか。

トラブルシューティング

Lambda の一連のトラブルシューティング ガイドについては、サポート フォーラムの次の投稿を参照してください。

その他の問題と解決策について詳しく説明します。

AWSのシークレットマネージャーが使えない

組織が AWS Secrets Manager の使用を許可していない場合、New Relic Lambda 拡張機能はNEW_RELIC_LICENSE_KEY環境変数を受け入れます。newrelic-lambda integrations installコマンドから--disable-license-key-secretフラグを追加します。次に、この環境変数を Lambda 関数の設定で。

複数のAWSリージョンとアカウント

newrelic-lambda CLI は、 --aws-regionパラメータを使用してリージョンごとに 1 回実行する必要があります。同じリンクされたアカウント名を使用すると、ツールはアカウント リンクが既に作成されていることを検出します。の シークレットは各リージョンで作成する必要があります。

同様に、複数のAWSアカウントをNewRelicアカウントにリンクできます。各アカウントに異なるリンクされたアカウント名を付けます。 CLIツールの--aws-profile引数は、名前付きプロファイルを選択します。このツールは、AWSCLIと同じ設定を使用します。

Lambda 関数がインストルメント済みとして表示されない

Lambda 関数を計測しましたが、New Relic のAmazon Web Services -> Lambda functionsセクションに計測済みとして表示されません。

API ポーリングMetric Streams統合の両方を UI で手動で New Relic アカウントにリンクしました。

1 つの New Relic アカウントで同じ AWS アカウントの 2 つの統合を行うこのシナリオでは、計測されたペイロードが New Relic cloud-collector エンドポイントで計測された Lambda 関数から受信されると、競合状態が発生します。ペイロードは、2 つの統合のいずれかにランダムに割り当てられます。関数エンティティにリンクされていない統合に割り当てられた場合、ペイロードはドロップされ、関数はインストルメント済みとして表示されません。AwsLambdaInvocationイベントまでの過去 30 日間に少なくとも 1 つのペイロードを受け取った関数のみがインストルメント済みとして表示されます。

FROM AwsLambdaInvocation SELECT count(*) SINCE 30 days ago WHERE entityGuid = 'ENTITY_GUID' LIMIT 1

同じ AWS アカウントに対して 2 つの統合を作成しないようにするには、前述のようにnewrelic-lambda CLI を使用することをお勧めします。これは、既存の統合を検出して使用するためです。

2 つの統合が既に作成されている場合は、New Relic のInfrastructure > AWSUnlink this accountをクリックして、保持する 1 つを選択し、もう 1 つをリンク解除します。

ヒント

Metric Streams 統合にはいくつかの制限があり、API ポーリング統合のリンクを解除する前に考慮する必要があります。また、 インフラストラクチャ ディメンション メトリクス クエリにはいくつかの制限があり、メトリクス ストリーム統合に完全にコミットする前に考慮する必要があります。

ライセンスキーの取得に失敗しました AccessDeniedException

ラムダコードには、AWSSecretsManagerを読み取る権限を持つ実行ロールが必要です。次のようなログが見つかった場合は、実行ロールのポリシーに適切な権限を追加してください。この例では、 template.yamlファイルをチェックして、この権限を付与する簡単な方法を確認してください。

Failed to retrieve license key AccessDeniedException: User: <ARN> is not authorized to perform: secretsmanager:GetSecretValue on resource: <ARN>
Copyright © 2024 New Relic株式会社。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.