Ad Widget

Collapse

Задача мониторинга по snmp с таймаутом по нео&

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Dusty
    Member
    • Dec 2010
    • 70

    #1

    Задача мониторинга по snmp с таймаутом по нео&

    На виртуальной машине развёрнуто готовое решение zabbix (Zabbix Server v1.8.3 (revision 13927) (16 August 2010)) для тестовых нужд.

    В данный момент стоит задача мониторинга по SNMP определённого приложения, которое генерирует некое число 1 раз в 60 секунд с таймаутом до 100 секунд (т.е. эпизодически вместо выдаваемого числа выдаётся что-то типа "хост анричабл" в промежутке от 10 до 100 секунд).

    Соответственно обычный элемент данных тут не подходит - не получает все значения, иногда пропуская их (опрос настроен 1 раз в минуту), а иногда получая ответ "хост анричабл".

    Вопрос:

    как сделать так, что бы элемент данных дожидался ответа в течении определённого времени?

    Следующий вопрос:

    как сделать так, что бы скрипт запущенный заббиксом на стороне сервера-клиента завершался по определённому таймауту из-за неответа приложения?
  • dima_dm
    Senior Member
    • Dec 2009
    • 2697

    #2
    1) Максимальный Timeout для Zabbix 30 секунд.
    Т.е. реализовать такой опрос можно только сторонним скриптом, результат писать либо во временный файл, откуда Zabbix будет считывать, либо через zabbix_sender отправлять результат.
    Пример реализации подобной схемы


    2) zabbix_agentd.conf
    Timeout = 3
    Но скрипт может не завершиться, лучше реализовать Timeout в коде скрипта
    пример на Perl
    Code:
    $TIMEOUT=600;
    $SIG{ALRM}=sub{ die "Timeout.\n"};
    eval {
     alarm($TIMEOUT);
     …код …
     alarm (0);
    };
    if ($@) {sendmail("$@");}

    Comment

    • Jimson
      Senior Member
      • Jan 2008
      • 1327

      #3
      я не очень понял условия задачи, т.к. если
      которое генерирует некое число 1 раз в 60 секунд
      то кто мешает опрашивать раз в 50 sec этот SNMP агент ?
      и что означает "таймаут от 10 до 100 сек" относительно SNMP агента

      Comment

      • Dusty
        Member
        • Dec 2010
        • 70

        #4
        2 dima_dm

        > 1) Максимальный Timeout для Zabbix 30 секунд.

        Т.е. zabbix 30 секунд ждёт ответа, я правильно понял?

        2 Jimson

        > то кто мешает опрашивать раз в 50 sec этот SNMP агент ?

        Никто

        > и что означает "таймаут от 10 до 100 сек" относительно SNMP агента

        В произвольный момент времени программа вместо числа генерирует ответ "хост анричабл", которым отвечает на все запросы от 10 до 100 с.

        Comment

        • dima_dm
          Senior Member
          • Dec 2009
          • 2697

          #5
          Originally posted by Dusty
          2 dima_dm

          > 1) Максимальный Timeout для Zabbix 30 секунд.

          Т.е. zabbix 30 секунд ждёт ответа, я правильно понял?
          Правильно. Задаётся
          /etc/zabbix/zabbix_server.conf
          Timeout=30

          Originally posted by Dusty
          > и что означает "таймаут от 10 до 100 сек" относительно SNMP агента

          В произвольный момент времени программа вместо числа генерирует ответ "хост анричабл", которым отвечает на все запросы от 10 до 100 с.
          Если Item числовой, а ему придёт текстовое значение "хост анричабл", то Item перейдёт в состояние Unsupported

          Comment

          • Dusty
            Member
            • Dec 2010
            • 70

            #6
            Originally posted by dima_dm
            Правильно. Задаётся
            /etc/zabbix/zabbix_server.conf
            timeout=30
            Спасибо, это уже видел. Странно только, что эта настройка для всего сервера - под разные задачи нужен разный таймаут.

            Originally posted by dima_dm
            Если item числовой, а ему придёт текстовое значение "хост анричабл", то item перейдёт в состояние unsupported
            Это тоже понятно. Осталось сообразить, как такую проблему обойти. Пока не очень хорошо себе это представляю, даже с использованием скрипта.

            Comment

            • dima_dm
              Senior Member
              • Dec 2009
              • 2697

              #7
              Originally posted by dusty
              Это тоже понятно. Осталось сообразить, как такую проблему обойти. Пока не очень хорошо себе это представляю, даже с использованием скрипта.
              Элементарно. В скрипте обрабатываете вывод, и если это не число, поменяете на число.

              Comment

              • Dusty
                Member
                • Dec 2010
                • 70

                #8
                Originally posted by dima_dm
                Элементарно. В скрипте обрабатываете вывод, и если это не число, поменяете на число.
                Понял. Будем разбираться. Спасибо.

                Comment

                Working...