匹配多个事件
在一个规则中,您可以匹配来自同一来源的一个或多个事件。一旦所有事件都匹配,它就会执行操作。两个额外的变量被传递到 playbook 中
- 事件 
- 事实 
示例
condition:
  all:
   - event.i == 1
   - event.i == 2
传递到 playbook 中的变量将具有以下值
{
    "variables": {
        "events": {
            "m_0": {
                "i": 1
            },
            "m_1": {
                "i": 2
            }
        },
        "facts": {
            "m_0": {
                "i": 1
            },
            "m_1": {
                "i": 2
            }
        }
    }
}
带赋值的示例
condition:
  all:
   - events.first << event.i == 1
   - events.second << event.i == 2
传递到 playbook 中的变量将具有以下值
{
    "variables": {
        "events": {
            "first": {
                "i": 1
            },
            "second": {
                "i": 2
            }
        },
        "facts": {
            "first": {
                "i": 1
            },
            "second": {
                "i": 2
            }
        }
    }
}
备注
相同的事件表达式不能使用多次。在下面的例子中,event.i == 1 已被使用两次,因此它不会匹配任何内容
condition:
  all:
   - events.first << event.i == 1
   - event.i == 1
在下面的例子中,event.i == 2 已被使用两次,因此它不会匹配任何内容
condition:
     all:
       - events.saveme << event.i == 2 and event.i > 0
       - event.i == 2
一旦一个事件匹配,它就会被移除,并且不会匹配任何后续条件。这种情况将有效,因为事件表达式不同
condition:
     all:
       - events.saveme << event.i == 2 and event.i > 0
       - event.i == 0
