LoginSignup
0
0

More than 1 year has passed since last update.

[NewRelic] サブアカウント毎のInfrastructure agent バージョンをNRQLで取得する

Last updated at Posted at 2023-02-16

この記事について

NewRelicにおいて、各サブアカウントで利用しているInfrastructure agentバージョンを一括取得する方法について記載します。

背景

弊社ではNewRelicを利用して、多くのシステムを監視しています。
各システム毎にサブアカウントを払い出して、システム=サブアカウントという単位で分割して管理を行っています。

弊社で管理する親アカウントが1つあり、その子アカウントとして各システムごとのサブアカウントがぶら下がっているイメージです。
サブアカウントについてはこちらをご参照ください。

各サブアカウントにおいてInfrastructure agentを利用してEC2などのVMからメトリクスを収集しています。

このInfrastructure agent(以後エージェント)ですが、バージョンがリリースされてから2年間でEOLとなります。
https://docs.newrelic.com/docs/infrastructure/infrastructure-monitoring/get-started/infrastructure-agent-eol-policy/
気がついたらEOLになっているバージョンを利用しているということが起きかねません。

そのため、各サブアカウントにて利用しているエージェントのバージョンを一括取得して、EOLが近づいている(もしくは過ぎている)エージェントを利用しているサブアカウントがないかチェックできるようにしたいと思います。

NRQLを利用すればそれが可能であるため後述します。

取得方法

親アカウントのQueryBuilderからNRQLクエリを実行します。

実行するNRQLクエリは以下の通りです。

SELECT count(*) FROM  NrDailyUsage  FACET infrastructureAgentVersion, subAccountId, subAccountName WHERE infrastructureAgentVersion IS NOT NULL SINCE 1 day ago LIMIT MAX 

NrDailyUsageイベントからメトリクスを取得します。
https://docs.newrelic.com/jp/attribute-dictionary/?event=NrDailyUsage

ちなみに「LIMIT MAX」を入れないと結果が10行しか出力されないので注意しましょう。
https://qiita.com/K5K/items/085357cfd660f20f4b59

NRQLクエリを実行した直後はcountで降順ソートされるため、「Infrastructure Agent Versionの」右にあるソートボタンをクリックして、エージェントのバージョンで昇順ソートします。
image.png

ソート後
image.png

出力結果はCSVにエクスポート可能です。
image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0