れっちり

2021.12.20

fluentd × New Relic でnginxのアクセスログをNew Relic Oneで見れるようにしよう!

この記事はNew Relic Advent Calendar 2021の20日目の記事です。

 

今回は↓の記事で紹介している「EC2 + nginx + fluentd + S3」にNew Relicを追加して
New Relic Oneでアクセスログを見れるようにしていこう!という記事です。

nginxのアクセスログをfluentdを使ってS3にファイルとして保存する(EC2 + nginx + fluentd + S3)

 

↑の記事ではハンズオンのような感じでnginxのアクセスログをfluentdを介してS3にファイルとして保存する方法を紹介しているので、

1から「EC2 + nginx + fluentd + S3」の環境を作ってからNew Relicの設定を行なっていきたいと思います。

 


 

↑の記事に従って色々やってパブリック IPv4 アドレスにアクセスしたらS3にファイルができるという状態まで来ました。

 


 

ではこれからEC2にNew Relicのプラグインをインストールして色々設定していこうと思います。

fluentdのconfigをいじっていく前に現在のconfigを貼っておこうと思います。

 


 

(これから何をするのかということですが、New Relic One に行けば教えてもらえる気がするので行ってみます。)

 


 

ログインしてすぐのこの画面に行ってLogsをクリックします。

 


 

Logsの画面が表示されたら右上の「Add more data sources」をクリックします 。

 


 

fluentdをクリックします 。

 


 

「Install the Fluentd plugin」 はTD agentでインストールしていくので下の方を選択します。
「Setup a config file」 には nginxのアクセスログのファイルパスを書きます 。

 


 

プラグインのインストールのためのコマンドが出てくるのでこれをEC2でsudoで叩きます。

 


 

New Relic One に戻り

「Generate config block」をクリックすると以下のようなブロックが表示されるのでこれを

fluentdのconfigの

の下に貼り付けます。

configファイルを編集します。

i を押して以下のブロックを貼り付けます。

esc からの :wq で保存して抜けます。

fluentd を再起動します。

 


 

パブリック IPv4 アドレスにアクセスしてNew Relic Oneのログを見てみます

一番下にアクセスログがありました。クリックしてみます。

 


 

messageにギュッとなってますね。

 


 

少し見辛いのでfluentdのconfigを編集します。

i を押して編集していきます。

<parse> の @type のところを nginx に変更します。

esc からの :wq で保存して抜けます。

fluentdを再起動します。

 

 


 

messageが空欄のログをクリックしてみるとこれが表示されました。

 


 

Add Columnをぽちぽちして色々追加していきます。

いい感じになりました。

 


 

今回はfluentdとNewRelicを繋げるという簡単な記事でしたが、
今後も勉強したことを自分で試してみて記事にしていこうと思います。
ありがとうございました。

Meetup 開催のお知らせ(1月5日18時から)