Forum Discussion

Matthew_Baezner's avatar
9 years ago

Multiple All Day Thresholds

We have a need to implement an greater than and a lower than threshold on the same instance of a datasource, multiple all day thresholds would make this process quite easy.

Thank you.

  • Hate to bring up a dead thread, but this doesn't work when you need the actual datapoint. In our case there is a range that can be returned. Say 1-7. 2-5 are "OK" returned values. 1, 6 & 7 are bad returned values, but each one of those values tells us what is wrong.

  • Hi Matthew -

    Internally we tend to handle these types of use-cases with a complex datapoint. To do so, you'd create a complex datapoint with a calculation that would return "1" when the collected value drops below your minimum threshold or exceeds your max threshold, and otherwise returns "0". You can then set a simple alert threshold on this datapoint to trigger when the value > "0". 

    In this case, the complex datapoint calculation would look something like this:

    if(gt(actual_value,2000) && lt(actual_value,200), 0, 1)

     

  • 16 hours ago, Joe Williams said:

    Hate to bring up a dead thread, but this doesn't work when you need the actual datapoint. In our case there is a range that can be returned. Say 1-7. 2-5 are "OK" returned values. 1, 6 & 7 are bad returned values, but each one of those values tells us what is wrong.

    I would love to see a token that references other datapoints as a "workaround" in this use case. In the Staff example, the token would be ##actual_value## in the customized alert messaging for the complex datapoint. 

  • 17 hours ago, Joe Williams said:

    Hate to bring up a dead thread, but this doesn't work when you need the actual datapoint. In our case there is a range that can be returned. Say 1-7. 2-5 are "OK" returned values. 1, 6 & 7 are bad returned values, but each one of those values tells us what is wrong.

    Couldn't you still use an expression for this scenario?

    if(eq(datapoint,1)||eq(datapoint,6)||eq(datapoint,7),datapoint,1)

    Then you can set your alert threshold to warning/error/critical when >1, it would still give you the numerical value indicating what the problem is, but would return 1 (or whatever other number you want) when the values are "OK" values.