Ad Widget

Collapse

Исключить вхождение строки в Web scenario

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • neclud
    Junior Member
    • Sep 2016
    • 2

    #1

    Исключить вхождение строки в Web scenario

    Доброго времени суток
    Нужно отслеживать, не появилась ли определенная строка на Web странице. Если строка (например, "error") присутствует, то это проблема, её быть не должно. Может быть, как-то можно написать regex правило в Required string?
  • rough-84
    Senior Member
    • Oct 2014
    • 198

    #2
    Дак всё же проще.
    Делаеш web проверку с искомой строкой "error", проверяеш каждые N минут.
    Заходиш в последние данные и смотриш строку Failed step of scenario "название сценария", если ошибок нет будет стоять 1 - типа строка не найдена.
    Делаеш на этот Item тригер в котором указываеш что если значение последнее или там за период <1 значит тревога, появилась слово "error"

    Comment

    • Semiadmin
      Senior Member
      • Oct 2014
      • 1625

      #3
      Originally posted by rough-84
      Дак всё же проще.
      Делаеш web проверку с искомой строкой "error", проверяеш каждые N минут.
      Заходиш в последние данные и смотриш строку Failed step of scenario "название сценария", если ошибок нет будет стоять 1 - типа строка не найдена.
      Делаеш на этот Item тригер в котором указываеш что если значение последнее или там за период <1 значит тревога, появилась слово "error"
      У этого метода с обратной логикой есть недостаток. Наличие строки "error" - не единственная возможная проблема. Сайт может быть вообще недоступен, а ваш триггер будет утверждать, что все ок.

      Comment

      • rough-84
        Senior Member
        • Oct 2014
        • 198

        #4
        Тогда можно добавить код 200. и тогда ошибкой будет являться состояние в котором Failed step of scenario >1.
        сделать два условия >1 и <1, грабли конечно, но в забиксе много таких лазеек через которые можно по простому получить нужный результат.

        Comment

        • Semiadmin
          Senior Member
          • Oct 2014
          • 1625

          #5
          Originally posted by rough-84
          Тогда можно добавить код 200. и тогда ошибкой будет являться состояние в котором failed step of scenario >1.
          сделать два условия >1 и <1, грабли конечно, но в забиксе много таких лазеек через которые можно по простому получить нужный результат.
          Тогда получается, нужно 2 сценария. И триггер, сравнивающий их результаты.
          Last edited by Semiadmin; 05-09-2016, 14:53.

          Comment

          • rough-84
            Senior Member
            • Oct 2014
            • 198

            #6
            Да можно и так
            Чтобы не рисковать и не строить грабли, можно просто сделать 2 сценария, первый на ошибку, второй доступность сайта.
            и тогда в тригере добавить оба айтема
            Failed step of scenario(1) <1
            Or
            Failed step of scenario (2)>0

            Comment

            • Semiadmin
              Senior Member
              • Oct 2014
              • 1625

              #7
              Нет, все же можно 1 сценарием, но 2 шага с одинаковыми url. На 1 проверяется код 200, на 2 - строка "error". Триггер failed step of scenario <2. Один сценарий лучше, т.к. проверки происходят почти одновременно.

              Comment

              • rough-84
                Senior Member
                • Oct 2014
                • 198

                #8
                Почему <2 ?
                Нормальное состояние сценария это Failed step of scenario =1
                Если код 200 не получен тогда Failed step of scenario = 2
                в время как как если обнаруживается "error", Failed step of scenario =0
                получается что ошибка у нас тогда когда Failed step of scenario!=1

                Comment

                • Semiadmin
                  Senior Member
                  • Oct 2014
                  • 1625

                  #9
                  По логике заббикс, 0 - это когда код 200, "error" есть, весь сценарий пройден. 1 - нет кода 200 на 1 шаге, сценарий на этом прервался. 2 - есть код 200, нет "error".

                  Comment

                  • rough-84
                    Senior Member
                    • Oct 2014
                    • 198

                    #10
                    Да вы обсалютно правы, я сам себя запутал. 1й шаг проверка на 200, второй проверка на 'error'.
                    Failed step of scenario <2 - ошибка, всё так как вы и написали.

                    Comment

                    • neclud
                      Junior Member
                      • Sep 2016
                      • 2

                      #11
                      Так и делал, но как-то неочевидно при взгляде со стороны, что fail - это хорошо Плюс триггеры с инверсными условиями - тоже не очень. В документации написано, что поле Required string - Required regular expressions pattern, но у меня никак не получилось написать нужный regexp

                      Comment

                      Working...