• ログイン

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

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

問題を作成する

CloudWatchのログを送信するためのAWS Lambda

AWS Lambda関数newrelic-log-ingestionを使用して、 AmazonCloudWatchログをNewRelicに送信できます。これは、AWSサーバーレスアプリケーションリポジトリから簡単にデプロイできます。

CloudWatchのログをNew Relicに転送することで、ログデータの収集、処理、探索、クエリ、アラートなどのログ管理機能が強化されます。

Cloudwatch logs Lambda functionのインストールと設定

以下の設定は、環境変数を設定するための一つの方法です。 Functions のページからも設定できます。

次の項目を完了します。

  1. New Relic のライセンスキーがあることを確認してください
  2. AWS Serverless Application Repository をブラウザで開きます。
  3. newrelicを検索し、 [カスタムIAMロールまたはリソースポリシーを作成するアプリを表示する]をオンにして、 newrelic-log-ingestionを見つけます。
  4. newrelic-log-ingestionの詳細を開き、[デプロイ]をクリックします。
  5. 機能の Configure メニューの Environment Variables に進み、以下の環境変数を使ってログフォワーディングを設定します。

説明

DEBUG_LOGGING_ENABLED

CloudWatchコンソールにデバッグメッセージを出力するかどうかを決定するブール値です。 任意です。

デバッグログをオンにするには、これをtrueに設定します。デフォルトはfalseです。

LICENSE_KEY

New Relicのライセンスキー データをNew Relicに送信する際に使用します。 必要です。

LOGGING_ENABLED

ログをNewRelicに転送するかどうかを決定します。必須。ロギングをオンにするには、これをtrueに設定します。

NR_LOGGING_ENDPOINT

New Relic のログ用インジェストエンドポイント。 必須.2つのエンドポイントがあります。

  • 私たち: https://log-api.newrelic.com/log/v1
  • EU: https://log-api.eu.newrelic.com/log/v1

NR_TAGS

すべてのログイベントに追加するタグを指定します。 オプションです。

各タグは、コロンで区切られたキーと値で構成されます。複数のキーと値のペアはセミコロンで区切られます。たとえば、 env:prod;team:myTeam

NR_LAMBDA_LOG_GROUP_PREFIX

/aws/lambdaとは異なるパスを使用するようにLambdaロググループを設定した場合は、この変数で指定できます。オプション。

NR_VPC_LOG_GROUP_PREFIX

/aws/vpc/flow-logとは異なるパスを使用するようにVPCロググループを設定した場合は、この変数で指定できます。オプション。

  1. アプリがカスタムIAMロールを作成することを確認してから、 Deploy をクリックします。

処理が完了したら、 Lambdaトリガーを作成して、Lambda関数とCloudWatchログを連携させます。

Lambdaトリガーの作成

取り込み機能では、ログサブスクリプションではなく、必ずトリガーを設定してください。Lambdaコンソールでサブスクリプションが設定されている場合、これにより、ログが生成されてNewRelicに転送されるカスケードが発生する可能性があります。

ログをNew Relicにストリーミングするには、Lambdaにトリガーを取り付けます。

  1. 左側のメニューから「 Functions 」を選択します。
  2. 以前に作成したnewrelic-log-ingestion関数を見つけて選択します。
  3. Designer の下で、 Add Triggers をクリックし、ドロップダウンから Cloudwatch Logs を選択します。
  4. お客様のアプリケーションに適切な Log group を選択してください。
  5. フィルターの名前を入力します。
  6. オプションです。 フィルターパターンを入力.
  7. Enable trigger のチェックボックスをチェックし、 Add をクリックしてトリガーを作成します。

リトライの設定(オプション)

通信の問題で機能がデータの送信に失敗した場合に実行するリトライの回数を設定することができます。推奨数は3回ですが、以下のパラメーターを変更することで、リトライの動作を変更することができます。

ヒント

リトライの回数が多いほど、関数の実行時間が長くなります。そのため、Lambdaのコストが高くなる確率が高くなります。しかし、リトライ回数を減らすと、データ損失の可能性が高くなります。

MAX_RETRIES = 3 # Defines the number of retries after lambda failure to deliver data
INITIAL_BACKOFF = 1 # Defines the initial wait seconds until next retry is executed
BACKOFF_MULTIPLIER = 2 # Time multiplier between the retries
As an example, in default above configuration, first retry will happen after 1 second, second retry after 2 seconds and third retry will happen after 4 seconds.

SAMテンプレートで作成されたリソース

リポジトリからアプリケーションを作成すると、以下のリソースも作成されます。

  • ラムダ関数自体
  • CloudWatch Logsに基づいてLambda関数に実行権限を与えるために使用されるロールです。

記載されていないその他のLambdaの設定は、デフォルトのままで構いません。

ログデータを表示する

すべてが正しく構成され、データが収集されている場合は、次の両方の場所にデータログが表示されます。

SELECT * FROM Log

ログ管理機能を有効にしてもデータが表示されない場合は、標準のログトラブルシューティング手順に従ってください。

次は何ですか?

プラットフォーム全体のログデータを調べます

ログ転送を無効にする

ログ転送機能を無効にするには、 Amazon CloudWatch documentation の標準的な手順に従います。New Relic では、他に何もする必要はありません。

Copyright © 2022 New Relic株式会社。

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