そーだいなるらくがき帳

そーだいが自由気侭に更新します。

Windowsの監視 ~ check-ntserviceを読み解く

この記事は Mackerel プラグインアドベントカレンダー(全部CRE) の19日目です。

qiita.com

soudai.hatenablog.com

それでは19日目は check-ntservice です。

check-ntserviceはWindowsNTサービスをチェックしてくれるプラグインです。

github.com

インストールと設定手順

至れり尽くせりなので公式ドキュメントに手順が書いてあるのじゃ!!

mackerel.io

Windowsのmackerel-agentをインストールするとcheck-ntserviceも一緒に同梱されています。

使い方

check-ntserviceの使い方はREADME.mdに書いてあるとおり、監視したいサービス名を指定するだけです。 オプションの一覧がなかったので記載します。

# check-ntservice.exe /h
Usage:
  check-ntservice.exe [OPTIONS]

Application Options:
  /s, /service-name:  service name
  /l, /list-service   list service

Help Options:
  /?                  Show this help message
  /h, /help           Show this help message

またヘルプにもある通り /l を指定すると対象のサービスの名前が一覧表示されます。

なんでcheck-procsじゃダメなの?

check-procsはWindows版も用意されています。 実はNTサービスとプロセスはWindowsの場合、別々に監視する必要があります。 実際にIISなどNTサービスには存在するがプロセスでは存在しないサービスが居るため、Mackerelではそれぞれのプラグインを用意しています。

Windows版はどんなプラグインが同梱されてるの?

2017/12/18 現在は下記のプラグインが同梱されています。

  • check-log
  • check-procs
  • check-ntservice
  • check-windows-eventlog
  • check-tcp
  • mackerel-plugin-windows-server-sessions

この他の公式プラグインWindowsで使いたい場合は自分でbuildする必要があります。 check-logやcheck-tcpなどアドベントカレンダーで紹介した内容そのまま同じように使うことができます。 この辺はgolangで作られているメリットですね! またインストールされているWindowsプラグインの一覧は下記のファイルで確認することができます。

mackerel-agent/pluginlist.txt at master · mackerelio/mackerel-agent · GitHub

今回はWindows監視にまつわる話でした。 明日はMySQL第二弾!!!InnoDBの監視です。

20日目 mackerel-plugin-mysql