我有多个陷阱项,它们返回一个整数,如下所示。
app.tidal.Health.HighPriority.MessagesInQueue
app.tidal.Health.CommDefault.MessagesInQueue
app.tidal.Health.Default.MessagesInQueue
我想创建一个触发器,如果其中两个或多个在最后3次检查中返回的值大于0,则发送严重性为高的消息。
我很难设法触发这是我现在所拥有的:
{Template_App_Tidal_Masters:app.tidal.Health.CommDefault.MessagesInQueue.min(#3)}>0 and
{Template_App_Tidal_Masters:app.tidal.Health.Default.MessagesInQueue.min(#3)}>0 and
{Template_App_Tidal_Masters:app.tidal.Health.HighPriority.MessagesInQueue.min(#3)}>0
但显然它不会起作用和声明,因此在最后3次检查中所有3都必须大于0。在3行上格式化触发器以使其更清晰。
答案 0 :(得分:1)
这应该有效:
({Template_App_Tidal_Masters:app.tidal.Health.CommDefault.MessagesInQueue.min(#3)}>0) +
({Template_App_Tidal_Masters:app.tidal.Health.Default.MessagesInQueue.min(#3)}>0) +
({Template_App_Tidal_Masters:app.tidal.Health.HighPriority.MessagesInQueue.min(#3)}>0) > 1
每个部分首先评估单个项目是否大于0.如果是,则表达式的该部分计算结果为1,如果为false,则为0.最后,我们总结这些评估的结果(而不是原始项目值)并检查两个或多个项目的值是否大于零。