Windowsサーバでフォルダ内のサブフォルダ数を監視してみた

Windowsサーバでフォルダ内のサブフォルダ数を監視してみた

はじめに

Windowsサーバでフォルダ内のサブフォルダ数を監視します。
対象フォルダは、C:\tempとします。

 

tempフォルダ配下の全サブフォルダを対象とします。
フォルダ構成は以下の通りです。

 

C:\>tree c:\temp
フォルダー パスの一覧
ボリューム シリアル番号は BADF-EFC8 です
C:\TEMP
├─Folder1
│ └─FolderA
├─Folder2
│ └─FolderB
└─Folder3

環境

Zabbixサーバ

OS:CentOS 8.2.2004
Apache:2.4.37
PHP:7.2.25
MariaDB:10.3.17
Zabbix Server:5.0.2
Zabbix Agent:5.0.2

 

検証サーバ

OS:Windows Server2016

 

ZabbixAgentのconfig

アイテムキーのアクセス制御設定を追加します。
AllowKey=system.run[*]

操作手順

Zabbixの管理コンソールにサインインします。

 

テンプレートを作成する

左サイドバーから [設定] - [テンプレート] をクリックします。
「テンプレートの作成」ボタンをクリックします。
以下の通り入力します。
テンプレート名:T_Folder_05
グループ:Templates
「追加」ボタンをクリックします。

 

テンプレートの作成が完了しました。
これから作成したテンプレートに対して設定を追加していきます。

 

アイテムの作成

「アイテムの作成」ボタンをクリックします。
アイテムの作成画面では、監視したい項目に合わせて設定します。
名前:サブフォルダ数 (C:\temp)
タイプ:Zabbixエージェント
キー:system.run[dir /AD /S /B C:\temp | find /c /v ""]
データ型:数値(整数)
監視間隔:1m
アプリケーションの作成:Folders
「追加」ボタンをクリックします。

 

トリガーを作成する

「トリガーの作成」ボタンをクリックします。
トリガーの作成画面では、監視したい項目に合わせて設定します。
名前:{HOST.NAME} サブフォルダ数 (C:\temp)
深刻度:警告
条件式:{T_folder_05:system.run[dir /AD /S /B C:\temp | find /c /v ""].last()}>4
条件式は、C:\Tempフォルダ内のサブフォルダ数が5個以上になった場合という意味です。
「追加」ボタンをクリックします。

 

テンプレートをホストにリンクする

左サイドバーから [設定] - [ホスト] をクリックします。
作成したテンプレートをリンクするホストを選択します。ここでは「WindowsServer2016」を選択しています。
「テンプレート」をクリックします。
新規テンプレートをリンク欄で、「T_Folder_05」をリンクします。

動作確認

[監視データ]-[最新データ]をクリックします。
ホストは「WindowsServer2016」を選択し、「適用」ボタンをクリックします。

 

ファイル数が取得できています。
Windowsサーバでフォルダ内のサブフォルダ数を監視してみた

 

ダッシュボードを見るとアラートを検知しています。
Windowsサーバでフォルダ内のサブフォルダ数を監視してみた

トップへ戻る