Ad Widget

Collapse

Мониторинг nfs, не работает nodata

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • p0gank
    Junior Member
    • Dec 2014
    • 5

    #1

    Мониторинг nfs, не работает nodata

    Есть задача мониторить доступность каталогов подключенных по nfs, сделал проверку item'а свободного места на отсутствие данных ({nfs client:vfs.fs.size[{#MOUNT},free].nodata(2m)}=1) ожидая что при "зависании" nfs он сработает. Однако такой вариант не работает как надо. Когда nfs "зависает", item переходит в статус "item not supported", на графике появляется разрыв, а сам триггер переходит в состояние Unknown и не срабатывает. В документации ограничений по nodata не нашел. Подскажите можно ли решить ситуацию или это так и должно быть.

    Zabbix 2.2.11
  • Semiadmin
    Senior Member
    • Oct 2014
    • 1625

    #2
    Проапгрейдить zabbix хотя бы до 2.4, там есть оповещения о переходе айтемов или триггеров в неподдерживаемые.

    Comment

    • p0gank
      Junior Member
      • Dec 2014
      • 5

      #3
      Originally posted by semiadmin
      Проапгрейдить zabbix хотя бы до 2.4, там есть оповещения о переходе айтемов или триггеров в неподдерживаемые.
      Апгрейдить на 2.4 не планируется, так-как 2.2 lts. Оповещение есть и в 2.2, но его использование выглядит как огромный костыль.

      Comment

      • Semiadmin
        Senior Member
        • Oct 2014
        • 1625

        #4
        А, вот еще на вашу тему:

        What's new in Zabbix 3.0.3

        Instead of switching trigger to unknown state if there are no data in period the sum, str, regexp and iregexp functions will return 0.

        Comment

        • p0gank
          Junior Member
          • Dec 2014
          • 5

          #5
          После нескольких эксперементов пришел к выводу, что nodata 2.2 успешно работает либо с активными проверками, либо с проверками выполняемыми на стороне сервера/прокси, но не агента.

          Comment

          • uniken1
            Member
            • Sep 2012
            • 93

            #6
            Вопрос по сути тот же, только мониторю файл на SMB zabbix agent
            vfs.file.contents[\\server\share\file]
            Файл тестовый в нем содержится один символ 1.
            Тирггер поставил
            {Template OS Windows File Share:vfs.file.contents[\\server\share\file].sum(2m)}<1

            Т.е. через 2 минуты должен появится алерт что файла нет. Но триггер встает в состояние не поддерживается и ни чего не происходит.

            Пробовал поставить agent active - ничего не меняется.
            Версия 3.0.3 - как говорили sum должна работать - не работает.

            Как настроить мониторинг существования файла??

            Comment

            • Semiadmin
              Senior Member
              • Oct 2014
              • 1625

              #7
              vfs.file.contents возвращает значение текстового типа, вряд ли его можно суммировать

              Comment

              • uniken1
                Member
                • Sep 2012
                • 93

                #8
                Type of information = numeric(unsigned)
                Когда файл существует, единичка номально отображается в Last Data.
                Если в файле вместо 1 поставить букву, то На итеме ошибка Received value is not suitable.
                Что дает основание полагать, что 1 из файла корректно читается как число. Проблема не тут.

                Comment

                • p0gank
                  Junior Member
                  • Dec 2014
                  • 5

                  #9
                  Originally posted by uniken1
                  Как настроить мониторинг существования файла??
                  {MY_HOST:vfs.file.exists[/tmp/fail].last()}=1

                  Comment

                  • uniken1
                    Member
                    • Sep 2012
                    • 93

                    #10
                    Не рабтает, когда файла не существует/не доступна шара. итем встает в not supported, а за ним и триггер - not supported
                    Last edited by uniken1; 17-08-2016, 12:22.

                    Comment

                    • Semiadmin
                      Senior Member
                      • Oct 2014
                      • 1625

                      #11
                      Проверил функцию str в 3.0.4. Триггер переходит в Unknown. Похоже, в "What's new" выдают желаемое за действительное

                      Comment

                      • p0gank
                        Junior Member
                        • Dec 2014
                        • 5

                        #12
                        Originally posted by uniken1
                        Не рабтает, когда файла не существует/не доступна шара. итем встает в not supported, а за ним и триггер - not supported
                        Это линуксовый хост
                        === Кусь ===
                        [en@zabbix ~]$ zabbix_get -s testhost -k vfs.file.exists[/tmp/fail]
                        0
                        [en@zabbix ~]$ zabbix_get -s testhost -k vfs.file.exists[/bin/true]
                        1
                        [en@zabbix ~]$ zabbix_get -s testhost -k vfs.file.exists[/nonexistentdir/nofile]
                        0
                        === Кусь ===

                        Это виндовый хост
                        === Кусь ===
                        [en@zabbix ~]$ zabbix_get -s winhost -k vfs.file.exists[c:/windows/system32/cmd.exe]
                        1
                        [en@zabbix ~]$ zabbix_get -s winhost -k vfs.file.exists[u:/no-directory/no-file]
                        0
                        === Кусь ===

                        Как видно, итем работает и по отсутствию. Покажите zabbix_get для случая неработающего item'а

                        Comment

                        • uniken1
                          Member
                          • Sep 2012
                          • 93

                          #13
                          zabbix_get возвращает другие значения нежели сервер
                          На сервере в Latest Data, все норм, проверяет по сетевому пути, читает содержимое по сетевому пути. Поменял значение в файле на 2, все отображается.


                          А это zabbix_get
                          Code:
                          [root@zabbix ~]# zabbix_get -s 10.0.0.48 -k "vfs.file.exists[\\10.0.0.48\IT\zbxping.txt]"
                          0
                          [root@zabbix ~]# zabbix_get -s 10.0.0.48 -k "vfs.file.contents[\\10.0.0.48\IT\zbxping.txt]"
                          ZBX_NOTSUPPORTED: Cannot obtain file information: [2] No such file or directory
                          Хотя с локальным путем файл видится нормально
                          Code:
                          [root@zabbix ~]# zabbix_get -s 10.0.0.48 -k "vfs.file.exists[H:\Shares\IT\zbxping.txt]"
                          1
                          Итого через zabbix_get проверить сетевой путь не получается.

                          Comment

                          • yukra
                            Senior Member
                            • Apr 2013
                            • 1359

                            #14
                            Originally posted by uniken1
                            zabbix_get возвращает другие значения нежели сервер
                            На сервере в Latest Data, все норм, проверяет по сетевому пути, читает содержимое по сетевому пути. Поменял значение в файле на 2, все отображается.


                            А это zabbix_get
                            Code:
                            [root@zabbix ~]# zabbix_get -s 10.0.0.48 -k "vfs.file.exists[\\10.0.0.48\IT\zbxping.txt]"
                            0
                            [root@zabbix ~]# zabbix_get -s 10.0.0.48 -k "vfs.file.contents[\\10.0.0.48\IT\zbxping.txt]"
                            ZBX_NOTSUPPORTED: Cannot obtain file information: [2] No such file or directory
                            Хотя с локальным путем файл видится нормально
                            Code:
                            [root@zabbix ~]# zabbix_get -s 10.0.0.48 -k "vfs.file.exists[H:\Shares\IT\zbxping.txt]"
                            1
                            Итого через zabbix_get проверить сетевой путь не получается.
                            Да здраствует bash, самый хороший обработчик спец символов:
                            Code:
                            yukra@yukra-ThinkPad-Edge-E330 ~ $ echo "vfs.file.contents[\\10.0.0.48\IT\zbxping.txt]"
                            vfs.file.contents[\10.0.0.48\IT\zbxping.txt]
                            yukra@yukra-ThinkPad-Edge-E330 ~ $ echo 'vfs.file.contents[\\10.0.0.48\IT\zbxping.txt]'
                            vfs.file.contents[\\10.0.0.48\IT\zbxping.txt]
                            yukra@yukra-ThinkPad-Edge-E330 ~ $

                            Comment

                            • uniken1
                              Member
                              • Sep 2012
                              • 93

                              #15
                              Ага, так работает
                              Code:
                              [root@zabbix ~]# zabbix_get -s 10.0.0.48 -k 'vfs.file.exists[\\10.0.0.48\IT\zbxping.txt]'
                              1
                              Все, вроде через exist разобрался как сделать.
                              Last edited by uniken1; 18-08-2016, 11:31.

                              Comment

                              Working...