Перейти к основному содержанию

Zabbix шаблон для мониторинга размера папок в Windows

Zabbix

Делюсь полезным шаблоном для мониторинга размера папок в Windows. Мониторим с помощью утилиты du (Disk Usage) от Sysinternals. Шаблон делал сам.

Мониторятся:

  • количество файлов
  • количество директорий
  • размер
  • размер на диске

Disk Usage (du) — Sysinternals

Размер и Размер на диске

Вы сами можете отредактировать список директорий и условия срабатывания триггеров.

Установка шаблона

Качаем архив: zabbix_du.zip.

Импортируем шаблон zbx_du.xml.

В макросах шаблона можно отредактировать периодичность опроса данных:

  • {$DU_DISCOVERY_PERIOD} — 6h. Периодичность автообнаружения папок.
  • {$DU_HISTORY_PERIOD} — 180d. Срок хранения истории.
  • {$DU_REQUEST_PERIOD} — 10m. Периодичность опроса данных.
  • {$DU_TREND_PERIOD} — 180d. Срок хранения трендов.

du

Копируем папку со скриптами в C:\zabbix\scripts. В ней у нас утилита du (Disk Usage):

  • C:\zabbix\scripts\du64.exe — утилита по умолчанию
  • C:\zabbix\scripts\du.exe — не используется, 32 бит
  • C:\zabbix\scripts\du64a — не используется, ARM

Копируем du.conf в папку с пользовательскими переменными, у меня это C:\zabbix\zabbix_agent.conf.d\du.conf. В конфигурации агента этот файл должен быть подключен.

Поскольку мы будем передавать на сервер пути к папкам, в которых есть символ слеша, то мы получим ошибку:

Special characters ", ', ", `, *, ?, [, ], {, }, ~, $, !, &, ;, (, ), <, >, |, #, @, 0x0a" are not allowed in the parameters.

Zabbix — special characters are not allowed in the parameters

Для решения проблемы нужно в конфиге агента включить параметр UnsafeUserParameters=1.

### Option: UnsafeUserParameters
# Allow all characters to be passed in arguments to user-defined parameters.
# 0 - do not allow
# 1 - allow
#
# Mandatory: no
# Range: 0-1
# Default:
# UnsafeUserParameters=0

UnsafeUserParameters=1

Перезапускаем агент:

net stop "Zabbix Agent" && net start "Zabbix Agent"

Подключаем шаблон к хосту, на котором создавали структуру.

du

Настройка списка папок

Переходим в раздел Items шаблона. Редактируем элемент данных DU directory list, он там один. Переключаемся на вкладку Preprocessing.

du

Редактируем код JavaScript в Parameters.

du

Здесь в формате JSON указывается список директорий, которые следует мониторить. И граничные условия срабатывания триггеров, при превышении которых триггер и сработает.

Для примера в шаблоне указаны две папки:

  • C:\Windows
  • C:\zabbix\scripts
var DirList = { 
"data": [
  {
    "{#DIR}": "C:\\Windows",
    "{#MAXSIZE}": "2147483648",
    "{#MAXSIZEONDISK}": "2147483648",
    "{#MAXFILES}": "1",
    "{#MAXDIRECTORIES}": "1"
  },
  {
    "{#DIR}": "C:\\zabbix\\scripts",
    "{#MAXSIZE}": "0",
    "{#MAXSIZEONDISK}": "0",
    "{#MAXFILES}": "0",
    "{#MAXDIRECTORIES}": "0"
  }
] };
return JSON.stringify(DirList)
  • {#DIR} — путь к папке
    • Левый слеш нужно дублировать
    • В конце левый слеш не ставится
    • Допустимы пробелы
    • Поддерживается кириллица
  • {#MAXSIZE} — максимальный размер, указываются в байтах. 0 — триггер отключён.
  • {#MAXSIZEONDISK} — максимальный размер на диске, указываются в байтах. 0 — триггер отключён.
  • {#MAXFILES} — максимальное количество файлов. 0 — триггер отключён.
  • {#MAXDIRECTORIES} — максимальное количество папок. 0 — триггер отключён.

Меняем список на свой и радуемся. Если нужно для разных серверов мониторить разные папки, то создаём новый шаблон.

du

Теги

 

Похожие материалы

Zabbix шаблон для мониторинга RAID контроллеров LSI в Windows

Делюсь полезным шаблоном для мониторинга RAID контроллеров LSI (Broadcom, Avago). Мониторим с помощью утилиты storcli. Шаблон делал сам.