Назад | Перейти на главную страницу

Nagios для подсчета файлов в определенном каталоге

Я пытаюсь отслеживать каталог на сервере, в котором количество файлов может меняться день ото дня. Сам этот сервер нормально контролируется на Nagios3. Однако, если я хочу подсчитать количество файлов в каталоге, например d:\david\ , которые все являются файлами XML.

Могут ли нагиос сделать это, и если да, то как мне это сделать? Я новичок в Nagios и все еще нахожусь с ним на ногах.

Вам нужно написать сценарий на любом языке, который вы знаете / предпочитаете, чтобы подсчитать количество файлов в вашем каталоге. В этом скрипте вы можете вернуть определенный статус выхода в зависимости от того, хотите ли вы рассматривать текущее состояние как OK, WARNING или CRITICAL в терминах nagios.

Затем вы можете использовать такой инструмент, как NSClient ++ или Winrpe для вызова вашего скрипта из nagios.

Вы можете использовать nrpe демон (на сервере nagios), чтобы инициировать команду на удаленном хосте. В твоем нагиосе services.cfg вы можете добавить строфу, которая выглядит так (измените admins контактную группу в настоящую контактную группу в вашей системе .. или оставьте комментарий?):

define service {
    service_description       count files in directory d:\david\
    check_command             count_david_files!
    host_name                 my.windows.host
    check_period              24x7
    notification_period       24x7
    # contact_groups            +admins
    event_handler_enabled     0
    use                       generic-service
}

Затем на my.windows.host вам нужно будет найти nrpe.cfg файл и добавьте строку примерно так (примечание: это от клиента linux, но конфигурация для Windows очень похожа)

command[count_david_files]=/usr/local/nagios/myplugins/check_david_files

Файл check_david_files должен быть какой-то исполняемый файл (командный файл явно работает), который выводит «ОК», «ПРЕДУПРЕЖДЕНИЕ», «КРИТИЧНО» или «НЕИЗВЕСТНО», а затем завершает работу с соответствующим кодом выхода:

 OK (0), WARNING (1), CRITCAL (2) and UNKNOWN (3).

Именно эти выходы вызывают состояние предупреждения в nagios, чтобы сообщить серверу, что что-то не так. Именно в этом командном файле вы можете сделать что-то вроде:

@echo "OK: Files less than 10"
@exit 0

или для предупреждения:

@echo "WARNING: Files > than 10!"
@exit 1

Для начала вы можете использовать только эти две строки для тестирования вашей установки. Удачи.