ログデータを既に Fluentd で監視している場合、弊社の Fluentd インテグレーションを使用して、New Relic でログデータを転送し、リッチ化することが可能です。
Fluentd ログをNew Relicに転送すると、ログ データの収集、処理、探索、書き込み、集計の機能が強化されます。
基本的なプロセス
ログ管理機能を有効にするには
あなたが持っていることを確認してください:
- New Relic
- Fluentd 1.0以上
該当する場合は、EUまたは日本のエンドポイントを設定します。
テスト Fluentd プラグインを使用しています。
トラフィックを生成して数分待ってから、アカウントのデータを確認してください。
Fluentdプラグインのインストール
Fluentdプラグインをインストールするには
Fluentdプラグインの設定
ヒント
Fluentd を初めて構成する場合は、一般的な使用例に対処する事前に構築された 構成ファイル のコレクションを確認すると役立つ場合があります。
Fluentdプラグインの設定を行う。
fluent.confファイル、または td-エージェントを使用している場合はtd-agent.confに次のデータ ブロックを追加し、プレースホルダーのテキストをに置き換えます。#Tail one or more log files<source>@type tail<parse>@type none</parse>path /path/to/filetag example.service</source>#Add hostname and service_name to all events with "example.service" tag<filter example.service>@type record_transformer<record>service_name ${tag}hostname "#{Socket.gethostname}"</record></filter>#Forward all events to New Relic<match>@type newreliclicense_key YOUR_LICENSE_KEY</match>変更が適用されたことを確認するために、Fluentdサービスを再起動します。
このドキュメントはインストールの役に立ちましたか?
EUまたは日本アカウント用のFluentd プラグインを構成する
デフォルトでは、FluentdプラグインはログをUSエンドポイントに転送します:https://log-api.newrelic.com/log/v1。New Relic組織がEUまたは日本のデータセンターにある場合は、手動でbase_uriプロパティを適切なエンドポイントに設定する必要があります:
- EU:
https://log-api.eu.newrelic.com/log/v1 - 日本:
https://log-api.jp.nr-data.net/log/v1
たとえば、ログをEUエンドポイントに転送するには:
#Tail one or more log files<source> @type tail <parse> @type none </parse> path /path/to/file tag example.service</source>
#Add hostname and service_name to all events with "example.service" tag<filter example.service> @type record_transformer <record> service_name ${tag} hostname "#{Socket.gethostname}" </record></filter>
#Forward all events to New Relic EU Endpoint<match> @type newrelic license_key YOUR_LICENSE_KEY base_uri https://log-api.eu.newrelic.com/log/v1</match>日本のアカウントの場合は、<match>ブロック内のbase_uriを日本のエンドポイントに置き換えます:
#Forward all events to New Relic Japan Endpoint<match> @type newrelic license_key YOUR_LICENSE_KEY base_uri https://log-api.jp.nr-data.net/log/v1</match>Fluentdプラグインのテスト
Fluentdプラグインがログファイルからの入力を受けているかどうかをテストする。
次のコマンドを実行して、テストログメッセージをログファイルに追加します。
bash$echo "test message" >> /PATH/TO/YOUR/LOG/FILEログ UI で
test messageを検索します。
ログデータを表示する
すべてが正しく構成され、データが収集されている場合は、次の両方の場所にログが表示されます。
SELECT * FROM Logログ管理機能を有効にしてもデータが表示されない場合は、標準のログトラブルシューティング手順に従ってください。
チューンナップログ Fluentd バッファ
デフォルトでは、プラグインは5秒ごとにログをNewRelicに送信します。このタイミングを変更する場合は、次の例に従って、構成に<buffer>ブロックを追加します。
[...]
# Forward all events to New Relic# For EU accounts set base_uri to https://log-api.eu.newrelic.com/log/v1# For Japan accounts set base_uri to https://log-api.jp.nr-data.net/log/v1<match> @type newrelic license_key YOUR_LICENSE_KEY
<buffer time> timekey 60s </buffer></match>詳細については、バッファ構成についての Fluentd のドキュメントを参照してください 。
UTF-16LE から UTF-8 への変換を構成する
この Microsoft SQL Server エラー ログの例では、Fluentd を使用して、取り込みに 必要な UTF-8 エンコード を使用して、UTF -16LE でエンコードされたログを New Relic に送信します。この例を他のエンコーディングに採用することもできます。
ヒント
これらのログに適切なlogtypeも追加します。
#Tail one or more log files<source> @type tail <parse> @type none </parse> path "D:/sqlserver/error.log" tag example.service encoding UTF-8 from_encoding UTF-16LE</source>
#Add hostname and service_name to all events with "example.service" tag<filter example.service> @type record_transformer <record> service_name ${tag} hostname "#{Socket.gethostname}" logtype MSSQL </record></filter>
#Forward all events to New Relic<match> @type newrelic license_key YOUR_LICENSE_KEY</match>Shift-JISからUTF-8への変換を設定する
Shift-JIS(CP932)でエンコードされた日本語のログファイルは、必須のUTF-8エンコーディングに変換され、ログデータをNew Relicにインポートして送信するために必要です。
<source>#Tail one or more log files @type tail path C:¥opt¥fluent¥cp932text.log # Full path of the log file you want to collect tag example.service from_encoding CP932 #logFile character encoding encoding UTF-8 #Character encoding when sending to New Relic <parse> @type none </parse></source>
#Forward all events to New Relic<match> @type newrelic license_key YOUR_LICENSE_KEY</match>次は何ですか?
ログ UIを使用して、プラットフォーム全体のログ データを調べます。
- ログインコンテキスト機能を使用してログを転送することにより、アプリケーションとプラットフォームのパフォーマンスデータの両方をより深く把握できます。
- アラートを設定します。
- データをクエリし、ダッシュボードを作成します。
ログ転送を無効にする
ログ転送機能を無効にするには、 Fluentd documentation に記載されている標準的な手順に従ってください。New Relic では、他に何もする必要はありません。