
Microsoft Azure 及び Google Cloud Platform のログを簡単に New Relic One にログを送信できるようになりました。
すでにクラウドインテグレーション機能を利用することでAzure/GCP とのメトリクス連携は可能でしたが、さらにログもまとめて簡単にNew Relicに取り込むことが可能となり、システムの全体把握を行いやすくなります。
元となるドキュメントはこちらになります。本Blogは手順をわかりやすく解説していますので、作業の際の参考にしてみてください。
Azure サービス側の設定
Azure Portal にて ログを送りたいサービスにて下記手順を実行します
(1)対象のサービスの「診断設定」をクリック

(2)「+診断設定を追加する」をクリック

(3)設定したいログのカテゴリやメトリックにチェックを入れる
(スクリーンショットはWebAppの例です、サービスによりログのカテゴリは異なります)

(4)宛先の詳細を設定する
※事前に利用したいストレージアカウントとイベントハブは作成しておく必要があります
「ストレージアカウントへのアーカイブ」を選択した場合は、ログを保存したいストレージアカウントの指定と保有日数を設定

「イベントハブへのストリーム」を選択した場合、送信に利用するイベントハブを選択する

Azure Blob Storage からログを転送する
(1)New Relic のポータルで「+Add more data」をクリック

(2)「Microsoft Azure Blob Storage」をクリック

(3)「Generate API Key」をクリック
表示された API Key はこの後利用するのでコピーして保存

(4)「Deploy to Azure」をクリック

(5)Azure Portal が開きますので、必要項目を記入して「確認と作成」をクリック
リソースグループ : デプロイするリソースグループを選択(新規or既存)
リージョン : 任意のものを選択(既存を選ぶと自動的に選択される)
New Relic License Key : (4)で作成したAPI Keyを入力
Target Storage Account name : フォワードしたいログを保存するストレージアカウント名を入力
Target Container Name : フォワードしたいログを保存するコンテナ名を入力

Azure Event Hub からログを転送する
(1)New Relic のポータルで「+Add more data」をクリック

(2)「Microsoft Azure Event Hub」をクリック

(3)「Generate API Key」をクリック
表示された API Key はこの後利用するのでコピーして保存

(4)「Deploy to Azure」をクリック

(5)Azure Portal が開きますので、必要項目を記入して「確認と作成」をクリック
リソースグループ : デプロイするリソースグループを選択(新規or既存)
リージョン : 任意のものを選択(既存を選ぶと自動的に選択される)
New Relic License Key : (4)で作成したAPI Keyを入力
Event Hub Namespace : ログフォワードに利用する Event Hub 名を入力
Event Hub Name : フォワードしたいログを保存するコンテナ名を入力
※空欄にしておくと自動で作成されるので、前項で指定したものと合わせる場合は入力してください

New Relic でのAzureのログの確認
(1)ログがNew Relic側で受け取れているか確認するために、New Relic ポータルの「Logs」をクリック

(2)Attributes → Azure → forwardername をチェックすると Blob Storage からのログは「Blob Forwarder」、Event Hub からのログは「EventHubForwarder」から確認することができます

GCP Pub/Sub でログを設定する
ログ転送方式は、ヘッダレスAPIとデータフロージョブの2パターンありますが、今回は「ヘッダレスAPI」を試します
詳しくはこちらのドキュメントをご参照ください
(1)New Relic のポータルで「+Add more data」をクリック

(2)「Google Cloud Platform」をクリック

(3)「Generate URL」をクリック
表示された URL はこの後利用するのでコピーしておいてください

(4)GCP Portal で pubsub → 「トピックを作成」をクリック

(5)任意のトピックIDを設定し「トピックを作成」をクリック

(6)作成したトピックで「サブスクリプション作成」をクリック

(7)必要項目を記入して「CREATE」をクリック
サブスクリプションID : 任意の値を入力
トピックを選択 : 任意のトピックを選択
配信タイプ : push
エンドポイントURL : (3)で生成したURLを入力

(8)「ロギング」→「ログルーター」→「シンクの作成」をクリック

(9)シンク名を入力し「次へ」をクリック

(10)シンクサービスの選択で「Cloud Pub/Sub トピック」を選択し、シンクの宛先を(7)で選択したトピックに設定し「次へ」をクリック

(11)必要に応じてフィルター等を設定し、「シンクを作成」をクリック

New Relic でのGCPのログの確認
(1)ログがNew Relic側で受け取れているか確認するために、New Relic ポータルの「Logs」をクリック

(2)Attributes → subscription → 対象サブスクリプション をチェックするとGCPからのログを確認することができます

ログの活用例
送信されているログの中にはメトリックやクラウドプロットフォームでの操作ログなどを送信することが可能です。ログに含まれたこれらのデータは可視化したりアラート設定を行うなど、NewRelic上で一元的に確認することができます。
下図はAzureのログに含まれるデータを元にグラフ化したものです。

グラフをまとめてダッシュボード化するなど、収集したログを運用やトラブル対応に是非ご活用ください。
ログの検索に関する詳細はこちらのドキュメントをご参照ください。
まとめ
New Relic のログ管理は、ログデータをアプリケーションやインフラのデータと接続する方法を提供します。Azure/GCP を利用するシステム構成を検討することも増えている中で、さらにオンプレなども組み合わせた複雑な環境においても、 New Relic を活用いただくことでログを一元管理し効率的な運用の実現にお役立ていただければと思います。
本ブログに掲載されている見解は著者に所属するものであり、必ずしも New Relic 株式会社の公式見解であるわけではありません。また、本ブログには、外部サイトにアクセスするリンクが含まれる場合があります。それらリンク先の内容について、New Relic がいかなる保証も提供することはありません。