Ad Widget

Collapse

Using 'AND' with DM

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • kluss0
    Junior Member
    • Mar 2010
    • 9

    #1

    Using 'AND' with DM

    I have three systems set up as child nodes to a central master node. I have set up triggers on all of the child nodes, and actions on the master node. If I set up an action based on a trigger from each child, the action is executed three times because of the AND/OR condition, and three e-mails are sent. If I set the condition to AND, so that the action requires all three triggers, the action is never executed. Am I missing something?

    Thanks,
    Kenny
  • untergeek
    Senior Member
    Zabbix Certified Specialist
    • Jun 2009
    • 512

    #2
    Please provide your Action's configuration here so we can see it better.

    If I am interpreting your question correctly, you have 3 triggers, 1 each on 3 different hosts:

    A
    B
    C

    And you want to have the trigger fire when all 3 conditions are true, but not when only 1 or 2 conditions are true.

    A & B & C

    But when you use "AND" it doesn't work correctly?

    If this is what you're trying to do, it may not be possible using Actions. You would likely have to have a single host collecting data from the 3 remotes and then have a single trigger for those 3 items being true. You could also create this single item with your AND tests, though I am not certain that Zabbix will allow triggers to span multiple hosts.

    Am I understanding your problem correctly?

    Comment

    • kluss0
      Junior Member
      • Mar 2010
      • 9

      #3
      I have three triggers set up, one on each of the three child nodes, A, B and C. The triggers are sent to a central node, D, where the actions are executed from.

      A B C
      \ | /
      D


      So, each box checks a host named tripleTest with a web check, and each box has a trigger named tripleTrigger defined as:

      {trippleTest:web.test.fail[triplePing].sum(#10)}>4

      So, if the web check fails 4 out of 10 times, the trigger is set. I see the trigger value set to "Problem" on D for all three nodes when I block http. However, the action is not exectued, and the no e-mail is sent.

      If I set the "type of calculation" to AND/OR, then I get three e-mails, one for each nodes trigger.

      Thanks,
      Kenny
      Attached Files

      Comment

      • untergeek
        Senior Member
        Zabbix Certified Specialist
        • Jun 2009
        • 512

        #4
        Rather than use Action conditions, make a single trigger with all three server conditions. One trigger, one action, one message.

        Comment

        • kluss0
          Junior Member
          • Mar 2010
          • 9

          #5
          Unter,

          That is a great idea, and it would probably work, except that it doesn't. There is apparently a bug in the interface in 1.8.3 and the 1.8.4rc* that produces a php error when you select hosts other than the master node:

          * reset() [<a href='function.reset'>function.reset</a>]: Passed variable is not an array or object[/var/www/html/8.4-zen/popup_trexpr.php:313]
          * Undefined index: description[/var/www/html/8.4-zen/include/items.inc.php:1129]

          I have already opened a bug report. Thanks for the tip, thought!

          Thanks,
          Kenny

          Comment

          • untergeek
            Senior Member
            Zabbix Certified Specialist
            • Jun 2009
            • 512

            #6
            Does it do that when you manually type in the trigger definition or only when you try to use the GUI to find the items to define the trigger?

            Comment

            • kluss0
              Junior Member
              • Mar 2010
              • 9

              #7
              I have tried typing in the trigger, but the syntax doesn't seem to exist. I tried:

              {NODE01:HOST01:web.test.fail[HOST01 Web Access].sum(#10)}>4

              and I get:

              X Host key does not exist. Check expression part starting from ' :Host01:web.test.fail[HOST01 Web Access].sum(#10)}>4 '

              X Not allowed symbols or sequence of symbols in expression element detected: Check expression part starting from ' HOST01:web.test.fail[HOST01 Web Access].sum(#10)}>4 '

              Is there a correct syntax to do node, host, test?

              Thanks,
              Kenny

              Comment

              Working...