SQLServerのサービス監視とsc queryの結果が異なる
表題の件、投稿いたします。
Zabbix Serverから以下コマンドを実行したところ、「255」の値が返ってきました。
zabbix_get -s <対象サーバIPアドレス> -k service.info[MSSQL$<インスタンス名>,state]
しかし、対象サーバでsc query MSSQL$<インスタンス名>
を実行すると、
RUNNING
と表示されます。
他のサービスで試したところ、zabbix_get
では0
、
sc query <サービス名>
ではRUNNING
と表示されます。
MSSQLをサービス監視するためには、何か行わなければならないことがあるのでしょうか。
【環境】
Server OS :RHEL8
Zabbix Server :5.0
Zabbix Agent:5.0
Windows Server(監視対象):2019
TNK - 投稿数: 4742
255ということは引数で指定したサービスが存在しないと判断され
ていると思われます。
コマンドを実行しているシェルで「$」を展開してしまっている可
能性が考えられるので、アイテムキーの部分だけでもコーテーショ
ンなどで括ってシェルに解釈されないようにして、zabbix_getコマ
ンドを実行してみてください。
batica - 投稿数: 21
ご返信ありがとうございます。
ご回答いただいたとおり、シングルクォーテーションで括ったところ、
0
と表示されました。(ダブルクォーテーションで括ったときは、
255
のままでした)【成功例】
zabbix_get -s <対象サーバIPアドレス> -k service.info['MSSQL$<インスタンス名>',state]
batica - 投稿数: 21
追記です。
Zabbix Serverのアイテムとして登録する場合はダブルクォーテーションで括るのが正しいです。
(シングルクォーテーションだと
255
が返ってきます)【アイテム】
名前:任意
タイプ:Zabbixエージェント
キー:service.info["<サービス名>",state]
データ型:数値(整数)
値のマッピング:Windows service state