概要
- Shif-JISのログファイルを単純に収集すると、NewRelic上では文字化けしてしまいます。
回避策はいくつかありますが、以下NewRelic社のナレッジを参考に、Flutendを導入する事で連携を行う。
fluentdを用いたNew RelicプラットフォームへのShift_JISログの連携方法
検証環境
- OS:Windows Server 2019
- ログファイル:test.log
※Windowsサービスをのステータスを取得するPowershellスクリプトをNewRelic-Flexで実行させたアウトプットのファイル。 - システムロケール:Shift-JIS
方法
-
NewRelicのアカウントからAPIキー(INGEST - LICENSE)を作成し、キーを控えておく。
※後のFluentdのコンフィグファイルで使用する。 -
Fluentdをインストーラーをダウンロード Download Fluentd
※FlutendでもTd-agentでも問題ない。検証環境ではTd-agentを選択 -
Fluentdをインストール
インストールウィザードの内容はデフォルトで問題なし -
FluentdにNewRelicのプラグインをインストールする。
4-1.アプリから「Td-agent Command Prompt]を起動
以下コマンドを実行
※基本的にはどちらか一方で良いfluent-gem install fluent-plugin-newrelic
td-agent-gem install fluent-plugin-newrelic
-
Flutend(td-agent)のコンフィグファイルを設定する。
※td-agentの場合:デフォルトパス
C:\opt\td-agent\etc\td-agent\td-agent.conf
→基本的な設定値はNewRelic社のナレッジを参考 ログフォワーディングのためのFluentdプラグイン
以下、今回の検証環境における設定
5-1.収集するログファイルを指定し、文字コードのエンコーディングを記述する
5-2.filterに前述のタグ名を付与
5-3.手順1で取得したNewrelicのライセンスキーを指定する。
5-4.上記設定後、コンフィグファイルを保存
結果
*以下のようにFluentdで収集したログがAPMServiceとして認識され、且つログファイルの内容が文字化けせずに出力される
※[plugin.type]もFluentd