  Detecting failures and identifying their root causes promptly and accurately
is crucial for ensuring the availability of microservice systems. A typical
failure troubleshooting pipeline for microservices consists of two phases:
anomaly detection and root cause analysis. While various existing works on root
cause analysis require accurate anomaly detection, there is no guarantee of
accurate estimation with anomaly detection techniques. Inaccurate anomaly
detection results can significantly affect the root cause localization results.
To address this challenge, we propose BARO, an end-to-end approach that
integrates anomaly detection and root cause analysis for effectively
troubleshooting failures in microservice systems. BARO leverages the
Multivariate Bayesian Online Change Point Detection technique to model the
dependency within multivariate time-series metrics data, enabling it to detect
anomalies more accurately. BARO also incorporates a novel nonparametric
statistical hypothesis testing technique for robustly identifying root causes,
which is less sensitive to the accuracy of anomaly detection compared to
existing works. Our comprehensive experiments conducted on three popular
benchmark microservice systems demonstrate that BARO consistently outperforms
state-of-the-art approaches in both anomaly detection and root cause analysis.
