こんにちは。いつも利用しております。Zabbix3.4.9です。
Windowsサーバのタスクマネージャーなどで見れる「ユーザー」情報なのですが、 こちらのログインユーザー数をZabbixのアイテムで取得するにはどのような設定で実現できるでしょうか。
ざっくりしていて申し訳ないですが、わかるかたがいましたらご教授いただきたいです。 ※可能であれば「アクティブ」「切断」などの状態別に取得できるか
よろしくお願いします。
Windowsであれば "query user"でログインユーザを取得できるので
UserParameterを利用して
UserParameter=useractive,powershell -Command "(query user | sls Active).count"
みたいな設定を作成して、監視できないでしょうか。 ※上記はアクティブユーザを取得する監視
ありがとうございます。
経験不足なことにUserParameterを利用したことがないのですが、 アイテム設定はuseractive[]を入れれば良い認識でしょうか。
例で提示させてもらったものは、変数利用しないので アイテム設定のキーを useractive にしていただければ取得できるはずです。
変数利用する場合は UserParameter=user.count[*],powershell -Command "(query user | sls '$1').count" といったUserParameterを作成して アイテム設定のキーを user.count[Active] で設定すれば同じ動きになるかと思います。 ※この場合は[Active]を変更して別のアイテムを作れば問題ないはずです。
useractiveで問題なくアイテム情報取得できました!
Windowsコマンドに詳しくないため少し追加で質問なのですが、 query userコマンドで「ユーザー名」だけを切り出すことも可能でしょうか?
あまりうまい方法ではない気がするのですが
■英語で問題ない場合 powershell -Command "chcp 437;(query user) -replace '\s{2,}', ',' | ConvertFrom-Csv | Select-Object USERNAME"
■日本語が必須の場合 powershell -Command "(query user) -replace '\s{2,}', ',' | Select-Object -skip 1 | ConvertFrom-Csv | Select-Object ユーザー名"
でしょうか。
powershell -Command "chcp 437;(query user) -replace '\s{2,}', ',' | ConvertFrom-Csv | Select-Object USERNAME"
上記にて問題なく情報取得できました!
丁寧にご教授いただきありがとうございます。大変助かりました。
アカウント名 Yasumi
ホームページ https://qiita.com/YasumiJP
居住地 Japan
Zabbix関連
Insight - 投稿数: 5
Windowsであれば "query user"でログインユーザを取得できるので
UserParameterを利用して
UserParameter=useractive,powershell -Command "(query user | sls Active).count"
みたいな設定を作成して、監視できないでしょうか。
※上記はアクティブユーザを取得する監視
Yasumi - 投稿数: 380
ありがとうございます。
経験不足なことにUserParameterを利用したことがないのですが、
アイテム設定はuseractive[]を入れれば良い認識でしょうか。
Insight - 投稿数: 5
例で提示させてもらったものは、変数利用しないので
アイテム設定のキーを useractive にしていただければ取得できるはずです。
変数利用する場合は
UserParameter=user.count[*],powershell -Command "(query user | sls '$1').count"
といったUserParameterを作成して
アイテム設定のキーを user.count[Active] で設定すれば同じ動きになるかと思います。
※この場合は[Active]を変更して別のアイテムを作れば問題ないはずです。
Yasumi - 投稿数: 380
ありがとうございます。
useractiveで問題なくアイテム情報取得できました!
Windowsコマンドに詳しくないため少し追加で質問なのですが、
query userコマンドで「ユーザー名」だけを切り出すことも可能でしょうか?
Insight - 投稿数: 5
あまりうまい方法ではない気がするのですが
■英語で問題ない場合
powershell -Command "chcp 437;(query user) -replace '\s{2,}', ',' | ConvertFrom-Csv | Select-Object USERNAME"
■日本語が必須の場合
powershell -Command "(query user) -replace '\s{2,}', ',' | Select-Object -skip 1 | ConvertFrom-Csv | Select-Object ユーザー名"
でしょうか。
Yasumi - 投稿数: 380
powershell -Command "chcp 437;(query user) -replace '\s{2,}', ',' | ConvertFrom-Csv | Select-Object USERNAME"
上記にて問題なく情報取得できました!
丁寧にご教授いただきありがとうございます。大変助かりました。