Ad Widget

Collapse

Отправка сообщений подтвержденных триг&a

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • pumko_adm
    Junior Member
    • May 2014
    • 24

    #1

    Отправка сообщений подтвержденных триг&a

    Приветствую!
    Подскажите, в чем может быть проблема:
    имеется zabbix версии 2.2.3, настроена отправка почты при срабатывании определенных тригеров с помощью стандартного инструмента.
    Но при этом, если в условиях выставить "Событие подтверждено = Подтверждено", то сообщения не уходят. Что и где нужно подкрутить, что бы почта уходила только после подтверждения события?

  • yukra
    Senior Member
    • Apr 2013
    • 1359

    #2
    Originally posted by pumko_adm
    Приветствую!
    Подскажите, в чем может быть проблема:
    имеется zabbix версии 2.2.3, настроена отправка почты при срабатывании определенных тригеров с помощью стандартного инструмента.
    Но при этом, если в условиях выставить "Событие подтверждено = Подтверждено", то сообщения не уходят. Что и где нужно подкрутить, что бы почта уходила только после подтверждения события?

    А что на вкладке "Условия"? Если убрать "Событие подтверждено = Подтверждено" то оповещение отправляется?

    Ps смотрите что именно вставляете в [img] используя кнопку "Preview Post".

    Comment

    • pumko_adm
      Junior Member
      • May 2014
      • 24

      #3
      Originally posted by yukra
      А что на вкладке "Условия"? Если убрать "Событие подтверждено = Подтверждено" то оповещение отправляется?
      Да в прнципе любое условие. например для тестов стоит:
      1. Состояние обслуживания не в обслуживании
      2. Значение триггера = ПРОБЛЕМА

      И если убрать условие подтверждения, то приходят письма и о проблемах и о восстановлении.
      Originally posted by yukra
      ps смотрите что именно вставляете в [img] используя кнопку "preview post".
      Ок, что-то сразу же не подумал об этом =)

      Comment

      • pumko_adm
        Junior Member
        • May 2014
        • 24

        #4
        И сразу же уточняющий вопрос.
        Если сообщенеи будет отправляться после подтверждения, возможно ли в тексте сообщения указывать текст подтверждения?

        Comment

        • pumko_adm
          Junior Member
          • May 2014
          • 24

          #5
          Выяснил почему не отправлялось сообщение.
          Причина была банальна, но её решение породило новую проблему xD

          Выставил в поле "Шаг"
          "От 1 к 0" вместо "От 1 к 1" которое стояло ранее. Т.е. раньше Заббикс делал проверку на наличие подтверждения, убеждался что его нет и на этом успакаивался, так как шаг кончался.
          А новая проблема - если выставить 0 - бесконечность, он будет вечно слать сообщения. пока проблема не уйдет. Как можно решить данную проблему? Какие ещё шаги можно выставить? Или как их правильно выставить, что бы сначала делалась проверка на наличие подтверждения, а лишь потом происходила отправка сообщения?

          Comment

          • pumko_adm
            Junior Member
            • May 2014
            • 24

            #6
            В настройках Заббикса выставляем отправку сообщений с помощью скрипта. Копируем данные строки в тело скрипта и тестируем. Так же в действиях, проставляем условие "Событие подтверждено - подтверждено", для того что бы отсылка произошла только после вашего подтверждения с высылкой ваших комментариев. Там же в действиях текст сообщения следующий (что для сообщения по умолчанию, что для сообщения о восстановлении):
            Code:
            {EVENT.ID} {INVENTORY.LOCATION1} {TRIGGER.STATUS} {TRIGGER.SEVERITY} {EVENT.DATE} {EVENT.TIME}
            Т.к. данный скрипт пока что разделяет по пробелам, нужно что бы данные не были разделены пробелами. В дальнейшем переделается на ";".
            {INVENTORY.LOCATION1} - задается в "Инвентарные данные" - "Местоположение"

            Code:
             #! /bin/bash
             to=$1
             subject=$2
             declare -a body="($3)"
             body0="${body[0]}" #id для БД
             body1="${body[1]}" #местоположение
             body2="${body[2]}" #статус триггера
             body3="${body[3]}" #важность триггера
             body4="${body[4]}" #дата возникновения триггера
             body5="${body[5]}" #время возникновения триггера
            
            
             text0='Сетевое оборудование по адресу: '
             text1='не доступно более 30 минут.'
             text2='Статус:'
             text3='Важность:'
             text4='Сведения:'
             text5='Дата и время возникновения/решения проблемы:'
             text6='Подробности можно узнать по телефону: ХХХХ (ФИО)'
             text7='Original event ID:'
             text8='Комментарий сотрудника ИТ:'
            
            
             ack=`echo "SELECT message FROM acknowledges WHERE eventid='$body0'" | mysql -uuser -ppassword -Dzabbix`
             cat <<EOF | mail -s "$subject" "$to"
             $text0 $body1 $text1
             
             $text2 $body2
             $text3 $body3
             
             $text4
             $text5 $body4 $body5
             $text6
             $text8 $ack
             
             $text7 $body0
             EOF
            Для других типов проблем соответственно переделать макросы и текст.

            Comment

            • aib
              Senior Member
              • Jan 2014
              • 1615

              #7
              Прекрасное решение!

              Спасибо!
              Sincerely yours,
              Aleksey

              Comment

              • pumko_adm
                Junior Member
                • May 2014
                • 24

                #8
                Пожалуйста.
                Переделал на разделитель ";".
                Посмотреть можно здесь: хабрахабр

                Comment

                • l1t3n
                  Junior Member
                  • May 2014
                  • 1

                  #9
                  Originally posted by pumko_adm

                  Code:
                   ack=`echo "SELECT message FROM acknowledges WHERE eventid='$body0'" | mysql -uuser -ppassword -Dzabbix`
                  Можно без изобретения велосипедов использовать макрос {EVENT.ACK.HISTORY} :
                  2014.05.19 14:00:50 "Zabbix Administrator (Admin)"
                  example comment

                  Comment

                  • pumko_adm
                    Junior Member
                    • May 2014
                    • 24

                    #10
                    Originally posted by l1t3n
                    Можно без изобретения велосипедов использовать макрос {event.ack.history} :
                    2014.05.19 14:00:50 "zabbix administrator (admin)"
                    example comment
                    О как, спасибо. Не знал, что такой макрос есть. Точнее в русской версии не нашёл, а в английскую не заглядывал. Спасибо!

                    Comment

                    Working...