1. A method for monitoring network conditions, the method comprising: receiving a first condition definition describing a first network condition to be monitored in a network and an activation definition; receiving a network topology definition indicating a location in the network to monitor for the first network condition; compiling the first condition definition to generate a first data plane component, a first control plane component, and an activation component; deploying the first data plane component into a data plane of the network, wherein the data plane component captures a first stream of network events as described in the first condition definition, and synthesizes the first stream of network events to generate a first modified stream of network events; deploying the control plane component into a network operating system for the network, wherein the control plane component receives the first modified stream of network events and correlates the modified stream of events into a correlated stream of events; deploying an activation component, wherein the activation component, upon receiving the correlated stream of events, initiates the activation definition.