【New Relic】タグ・Workload活用でデータ整理を効率化

こんにちは。SCSKの井上です。

New Relicエージェントを導入した後、サーバーの見方や検索方法を理解し、UIを使いこなすための基本操作を紹介します。この記事を読むことで、効率的な監視と分析ができる一助になれば幸いです。

 

はじめに

New Relicを導入したものの、機能が多くてどこから確認すればよいかわからないことがあります。サーバの観測状況を把握したい、異常の兆候を見つけたいと思っても、UIの見方がわからなければ運用効率化につながりません。障害対応の初動が遅れるとビジネスへの影響も大きくなります。この記事では、New Relicで観測対象として登録されているデータを効率的に検索する方法について解説します。

 

エンティティとは

New Relicでは、アプリケーション、ホスト、データベース、コンテナなどの観測対象となるリソースやコンポーネントを”エンティティ”と呼びます。一意のID(entityGuid)によって識別されるデータや、New Relicがアクセス可能なリソースを指します。UI上で”entity”という表記があれば、New Relicが管理・観測しているリソースやコンポーネントの対象を意味すると理解しておけばよいですね。

 

 

システムの健全性の見方を効率化させるUI機能

一元管理されたエンティティをわかりやすく表示するため、New RelicはUI機能が充実しています。用途に応じて使う機能は異なるため、この記事では代表的な画面の見方を解説します。

エンティティエクスプローラー

New Relicが対象のアカウントで観測するすべてのリソースを集約し、問題の特定やパフォーマンス分析するための中心的な画面になります。All Entitiesをクリック後に、リスト形式でエンティティが表示されています。何が観測対象として登録されているか、どこのエンティティに問題があるかをすばやく把握するための始点になります。

この画面で以下のようなことができます。

・すべてのエンティティを一覧表示
   アプリケーション、ホスト、コンテナなどをカテゴリ別に表示

・問題のあるエンティティを強調表示
   パフォーマンス異常やアラート状態のエンティティを赤色で表示
   Activity streamでシステム内で発生したイベントをリアルタイムで表示

・フィルタリングと検索機能
   虫眼鏡マークの横からタグや属性で絞り込み、対象エンティティだけを表示

 

Navigator

New Relicの観測対象全体の健全性をハニカム表示で確認する画面です。大量のエンティティを色によって状態確認できるように設計されていますので、視覚的にどこのエンティティに問題があるかがすぐに分かります。この画面は右上のListのとなりに表示されているNavigatorからアクセスできます。

意味
正常状態。問題なし。
黄色 警告状態。注意が必要。
重大状態。即時対応が必要。
グレー データ未取得、エージェント非アクティブ、アラート未設定のいずれかの状態。

 

ハニカムアイコンで何のエンティティかわからない場合は、Include dataのピッカーをオンにすることで、ハニカム内にエンティティ情報が表示されます。また、「Show only alerting entities」のピッカーをオンにすることで、アラートが起きているエンティティのみに表示を絞ることができます。

 

Lookout

最近の異常な変化の大きさを色付きの円にて視覚化する画面です。過去1時間の平均と直近5分間のデータを比較し、通常の動作から逸脱しているエンティティを視覚的に表示します。円のサイズで変化の規模を表し、色で変化の方向(増加・減少)を示しています。アラートの閾値に達する前に過去1時間前と直近5分間のデータを比較するため、リソースの急激な変化の予兆を察知することができます。この画面は右上のNavigatorのとなりに表示されているLookoutからアクセスできます。

画面 説明

Filter by rate of deviation

変化率のしきい値でフィルタリングします。スライダーを左から右に寄せると大きな変化だけを表示させます。

Hide non-deviating entities

変化していないエンティティを非表示する場合に選択します。

 

 

Enable square view

円ではなく四角い場合に選択します。

 

Size by volume

どのエンティティが影響度が大きいかを確認したい場合に選択します。

 

Color settings】 

5種類のカラーセットから色を選択することができます。

 

 

エンティティ間の視覚化:Service map

フロントエンドからバックエンドまでのアーキテクチャ全体を視覚化し、システムを構成するアプリケーション、データベース、ホスト、外部サービスなどの相互関係を動的に表示します。Webサイトやアプリの表側(フロントエンド)から裏側(バックエンド)まで、どんな部品がつながっているかを地図のように示すため、対象のエンティティがどこでつながっているのか、どのエンティティにも影響があるのかを一目でわかることができます。

 

 

データの整理と検索を効率化させるタグ機能

New Relicのコンソールには、エンティティから集約された多様なデータが表示されます。そのため、データを整理・検索・分析するうえで、タグ付けは運用を効率化する重要な手段となります。どのようなシーンで効力を発揮するのか、タグのつけ方や検索の仕方について、解説していきます。

タグの利用シーン

タグを使用する場面の一例を表にまとめました。タグを使用することで、対象のエンティティを早くフィルタできることや、タグベースで対象のエンティティのメトリクス集計などができるようになります。命名規則がなければ、管理が複雑になりますので、タグを設定する場合のルールは決めておく必要があります。タグはキーと値のペア(key:value)で構成されます。

利用シーン タグ例(key:value) 目的・メリット
環境の識別 env:production, env:staging 本番・開発・テスト環境を簡単にフィルタリング
サービス分類 service:payment, service:api 複数サービスを検索しやすくする
チーム・担当者管理 team:backend, team:frontend 担当チームごとに整理
コスト分析 billing:infra, billing:app 担当ごとのリソース利用状況を把握し、コスト最適化
アラートポリシー設定 alert:ignore, alert:disabled アラート対象の通知、非通知を判別

 

自動的に付与されるタグ

New Relicにはエンティティに自動的に付与されるタグがあります。これらのタグは削除することはできません。例として以下があります。

カテゴリ タグ名(key) 説明
アカウント関連 account New Relicアカウント名
  accountId New RelicアカウントID
エージェント関連 agentName New Relicエージェント名
  agentVersion New Relicエージェントバージョン
アプリケーション関連 language アプリケーションの言語
  appName APMで設定されたアプリケーション名
ホスト関連 host ホスト名
  hostname OSレベルのホスト名
クラウド関連 availabilityzone,InstanceId,instanceType等 アベイラビリティゾーン、インスタンスID、インスタンスタイプ等

 

タグのつけ方

タグのつけ方はNew Relicコンソールからタグを付ける方法とデータ送信時にタグを付ける方法の2つのパターンを解説します。タグを一つずつ付与するには大変な量になっている場合は、自動化でタグをつけることも可能ですが、別の記事にて紹介します。

タグは、1つのエンティティ(サーバー、アプリ、コンテナなど)につき最大100個まで設定できます。文字数の上限は、キーが128文字、値が256文字で、いずれも日本語は使用できません。

 

New Relic コンソールからタグを付ける方法

New Relic コンソールからタグを付ける方法は、以下の画面以外にもあります。一例として解説します。タグ付け後、タグを使って検索したい場合、反映に数分程度がかかることがあります。

1.All entitiesからタグを付けたいエンティティ名をクリックします。 2.上部の「Tags」をクリックし、key:value形式で記入後、Enterを押します。 3.タグが付与されていることを確認します。デフォルトのタグは削除できませんが、任意で追加したタグは、タグの横のxにて削除できます。

 

データ送信時にタグを付ける方法

エージェント側の設定ファイルにタグ情報記載する必要があります。タグを追加した時点以降のデータにはタグが反映されますので、後付けで転送するログに対してタグを付けた場合は、過去分には反映されません。以下は、Infrastructure エージェントを導入したホストに対してタグを付ける方法になります。

記載場所:/etc/newrelic-infra/logging.d/logging.yml
custom_attributes:
  environment: production
  team       : infra
  ・・・・

 

タグを用いた検索の仕方

タグを使った代表的な検索方法について解説します。主にNRQL(New Relic Query Language)と呼ばれるNew Relic独自の言語を用いてデータを検索・分析に効果を発揮します。NRQLの説明については以下の記事をご参照ください。

画面 説明
【UIフィルタ】

特定のエンティティ群のみを抽出したい場合に有効

【NRQL】

高度な検索やダッシュボード、アラートをカスタマイズして作成する際に使用

【Logs】

大量のログから特定のタグが付いたログを抽出する際に有効

 

workloadを使ったエンティティのグループ化

関連するエンティティをグループ化し、サービスやチーム単位で観測するエンティティを集約することで、問題の特定を効率化します。チームが管理するエンティティ毎にグループ化することで、定常的な健全性の確認や障害発生時に誰がどのシステムを対応しなければならないかを迅速に把握することができます。その結果、対応時間を短縮し、チーム間の連携につながります。

workloadの作り方

1.All Capabilitiesをクリックし、検索ボックスに「workloads」と入力した結果から「Workloads」をクリックします。左メニューに固定化して表示させる場合は、画鋲のマークをクリックすることで、有効になります。 2. 「Create a workload」をクリックします。

 

3.グループ名にあたる「Give it a name」を入力し、対象とするエンティティを「+Add」します。完了後、「Create a workload」をクリックします。 4.対象のエンティティが集約されて表示されていれば完了です。

 

 

workloadの見方

ワークロードでどのような使い方ができるのか、画面ごとに説明します。

画面 説明
【Summary】

ワークロードに登録されているエンティティのステータス状態が表示。全体の健全性を確認したい場合に利用。

【Errors】

ワークロードに登録されているエンティティのエラー状態が表示。どのサービスでエラーが多発しているかを確認したい場合に利用。

【Activity】

システムの変更やデプロイによってレスポンスタイムやスループットに異常があるかを確認したい場合に利用。

【Map】

エンティティ間の依存関係を可視化し、障害が起きた際に、他のサーバにも影響があるかを確認したい場合に利用。

【Change tracking】

コミット情報を紐づけし、特定のコード変更がパフォーマンスやエラーに影響があるかを確認したい場合に利用。

 

 

さいごに

この記事では、New Relicで登録されているエンティティの健全性を確認する方法や、タグ機能を活用した効率的な管理手法について解説しました。エンティティの数が増えると、視認性が低下し、予兆検知や障害対応のスピードが遅れるリスクがあります。UI機能やタグを駆使することで、迅速に問題を特定し、運用効率を高めることが可能です。

New Relicにはアラート設定、NRQLクエリ、ダッシュボードなどの高度な機能があり、これらを組み合わせることで、より包括的な観測と分析が実現します。アラートポリシーの設計やNRQLを使ったカスタムクエリの作成方法についても紹介していきますので、今後も参考に頂ければ幸いです。

SCSKはNew Relicのライセンス販売だけではなく、導入から導入後のサポートまで伴走的に導入支援を実施しています。くわしくは以下をご参照のほどよろしくお願いいたします。

著者について

New Relicのセールスエンジニアとして2025年1月から参画。現場で得た知見や日々の学びを活かし、New Relicの価値をより多くの方に届けることを目指しています。後発ながら、わかりやすい記事を皆様に提供できるよう頑張っています。

Masao Inoueをフォローする

クラウドに強いによるエンジニアブログです。

SCSKでは、自社クラウドと3大メガクラウドの強みを活かし、ハイブリッドクラウド/マルチクラウドのソリューションを展開しています。業界の深い理解をもとに、お客様の業務要件に最適なアーキテクチャをご提案いたします。サービスサイトでは、お客様のDX推進をワンストップで支援するサービスの詳細や導入事例を紹介しています。

New Relicソリューション運用・監視
シェアする
タイトルとURLをコピーしました