3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Windows のカスタムモニタリングを実現する New Relic Flex の Tips まとめ

Last updated at Posted at 2025-03-26

New Relic Flexはホスト上のコマンドやファイル、HTTPアクセスを介して任意のデータをNew Relicに送信する機能です。この記事ではWindowsホストでNew Relic Flexを利用してみます。

New Relic Flexの概要について理解されたい方は以下のドキュメントをご確認ください。

はじめてみよう

New Relic FlexはNew Relic Infrastructure Agentがインストールされたホストで利用できます。
こちらの記事を参考にインストールしてください。

定義ファイルを作成してみよう

New Relic Flexは実行するコマンドやデータのヘッダ(属性名)などをyaml形式の定義ファイルに記述します。この定義ファイルを C:\Program Files\New Relic\newrelic-infra\integrations.d に配置すれば処理が開始されます。

ここでは、Windowsの netstat コマンドを例にしてみます。

windows-netstat.yml
# Windows Netstat
integrations:
  - name: nri-flex
    interval: 60s
    config:
      name: winNetstat
      apis:
        - event_type: winNetstat
          shell: powershell
          commands:
            - run: netstat -ano
              split: horizontal
              set_header: [proto, localAddress, foreignAddress, state, processId]
              regex_match: true
              row_start: 1
              split_by: \s+(\w+)\s+(\S+)\s+(\S+)\s+(\w+|\s+)\s+(\d+)

event_typeに記述した名前がNew Relicでのイベント名になります。

データを確認してみよう

New Relic Flexでデータが送信されていることを確認してみましょう。今回の定義ファイルでのEvent名は winNetstat になります。

winNetstat.png

Data explorerを使ってNRQLを書かずにデータを確認することもできます。

こんな時は...

1. 日本語が文字化けする

日本語のWindowsではコマンド実行時のコードページが Shift_JIS のため、そのままNew Relicにデータを転送すると日本語が文字化けしてしまいます。

integrations:
  - name: nri-flex
    config:
      name: winJapanese
      apis:
        - event_type: winJapanese
          commands:
            - run: echo ニューレリック株式会社 技術統括
              split: horizontal
              split_by: \s+
              set_header: [company, department]

winJapanese_sjis.png

この場合 chcp コマンドを使ってコードページをUTF-8に変更することにより、文字化けを解消できます。

integrations:
  - name: nri-flex
    config:
      name: winJapanese
      apis:
        - event_type: winJapanese
          commands:
            - run: chcp 65001 > nul & echo ニューレリック株式会社 技術統括
              split: horizontal
              split_by: \s+
              set_header: [company, department]

winJapanese_utf8.png

2. データが送信されない

そんな時はこちらの記事を参考にして定義ファイルが問題ないかデバッグしてみてください。

nri-flex.exe は次のパスにあります。

C:\Program Files\New Relic\newrelic-infra\newrelic-integrations\nri-flex.exe

3. もっと定義ファイルのサンプルが欲しい

安心してください。GitHubにWindowsを含むさまざまな定義ファイルがアップロードされています。

まとめ

New Relic Flexを介してWindowsのOSコマンドやバッチプログラムなどを実行することにより、さまざまなデータをNew Relicに送信することができます。これまで手動で取得していたデータをNew Relicに集約し、さらなら品質維持や改善にぜひご活用ください!

New Relicでは、新しい機能やその活用方法について、QiitaやXで発信しています!
無料でアカウント作成も可能なのでぜひお試しください!

New Relic株式会社のX(旧Twitter)Qiita OrganizationOrganizationでは、
新機能を含む活用方法を公開していますので、ぜひフォローをお願いします。

無料のアカウントで試してみよう!
New Relic フリープランで始めるオブザーバビリティ!

3
4
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
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?