Source Code and Dataset B for KDD 24 Paper "Microservice Root Cause Analysis With Limited Observability Through Intervention Recognition in the Latent Space".
- Download the repo (Dataset B included).
 - Install the dependencies in 
requirements.txtwithPython >= 3.9, < 3.11 
Run python main.py [--cpus NUM_WORKERS].
Results will be saved under the results/.
- According to the format in 
data/dataset_b/data/1/metrics.jsonanddata/dataset_b/data/1/rccs.json, organize your metric data and RCC list, RCC edges, and connections between RCCs and Metrics and put them underdata/[dataset_name]/data/[case_name]/. - Specify inter-service dependencies in the dataset's 
labels/service_deps.jsonto establish causal relationships at the metric layer. - Refer to the format in 
labels/label.jsonto set the trigger, root cause, and trigger time for each case. - If necessary, you can add metric category determination code for your dataset in 
utils.py(this category is used to partition meta_variable for metrics during graph construction, for more details, refer to CIRCA). - Run 
python main.py -d [dataset_name] [--cpus NUM_WORKERS]. 
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
- CIRCA: CIRCA.