A computer-implemented method for performing real-time probabilistic root cause correlation, the method comprising: receiving network topology data from a plurality of external sources (105a, 105b, 105c); generating, based on the received network topology data, a cross-layer network topology; generating, based on the generated cross-layer network topology, an event model, wherein the event model models the causal relationships between root causes and one or more observed failure events that are associated with one or more network entities (405a to 405d, 410a to 410b, 415, 420, 425, 430), wherein the event model is a bipartite causality graph comprising multiple bipartite causality sub-graphs, wherein each node (435, 440, 445, 450, 455, 460) in the bipartite causality graph and in the multiple bipartite causality sub-graphs is a binary variable indicating the presence or absence of an observable event, and each edge in the bipartite causality graph and in the multiple bipartite causality sub-graphs represents a causality relationship, wherein a first bipartite causality sub-graph of the multiple bipartite causality sub-graphs indicates causal relationships associated with a group of network entities (405, 410, 415, 420, 425, 430) in the network and a second bipartite causality sub-graph of the multiple bipartite causality sub-graphs indicates causal relationships associated with a subset of the group of network entities; receiving a plurality of network event data for the one or more network entities identified in the cross-layer network topology; inferring, using a trained Bayesian network, a root cause of at least one failure event indicated in the plurality of network event data based on the plurality of network event data and the generated event model; and outputting the inferred root cause correlated to the failure event indicated in the plurality of network event data. receiving network topology data from a plurality of external sources (105a, 105b, 105c); generating, based on the received network topology data, a cross-layer network topology; generating, based on the generated cross-layer network topology, an event model, wherein the event model models the causal relationships between root causes and one or more observed failure events that are associated with one or more network entities (405a to 405d, 410a to 410b, 415, 420, 425, 430), wherein the event model is a bipartite causality graph comprising multiple bipartite causality sub-graphs, wherein each node (435, 440, 445, 450, 455, 460) in the bipartite causality graph and in the multiple bipartite causality sub-graphs is a binary variable indicating the presence or absence of an observable event, and each edge in the bipartite causality graph and in the multiple bipartite causality sub-graphs represents a causality relationship, wherein a first bipartite causality sub-graph of the multiple bipartite causality sub-graphs indicates causal relationships associated with a group of network entities (405, 410, 415, 420, 425, 430) in the network and a second bipartite causality sub-graph of the multiple bipartite causality sub-graphs indicates causal relationships associated with a subset of the group of network entities; receiving a plurality of network event data for the one or more network entities identified in the cross-layer network topology; inferring, using a trained Bayesian network, a root cause of at least one failure event indicated in the plurality of network event data based on the plurality of network event data and the generated event model; and outputting the inferred root cause correlated to the failure event indicated in the plurality of network event data.