A Chaos Engineering System for Live Analysis and Falsification of Exception-handling in the JVM

Long Zhang, Brice Morin, Philipp Haller, Benoit Baudry, Martin Monperrus
5/14/2018
cs.SE

Official code: ASSERT-KTH/royal-chaos (146 stars, MIT, last commit 2024-10-03).

Abstract

Software systems contain resilience code to handle those failures and unexpected events happening in production. It is essential for developers to understand and assess the resilience of their systems. Chaos engineering is a technology that aims at assessing resilience and uncovering weaknesses by actively injecting perturbations in production. In this paper, we propose a novel design and implementation of a chaos engineering system in Java called ChaosMachine. It provides a unique and actionable analysis on exception-handling capabilities in production, at the level of try-catch blocks. To evaluate our approach, we have deployed ChaosMachine on top of 3 large-scale and well-known Java applications totaling 630k lines of code. Our results show that ChaosMachine reveals both strengths and weaknesses of the resilience code of a software system at the level of exception handling.

View on arXivView PDF

Code Implementations(1)

MIT

Chaos engineering systems invented at KTH Royal Institute of Technology. http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-320638

14630C, C++Feb 6, 20182 years agoMIT
bytecodechaos-engineeringexception-handlingfault-injectionjvm+2 more

Similar Papers

Cite this paper

@article{zhang2018chaos,
  title  = {A Chaos Engineering System for Live Analysis and Falsification of Exception-handling in the JVM},
  author = {Long Zhang and Brice Morin and Philipp Haller and Benoit Baudry and Martin Monperrus},
  year   = {2018},
  eprint = {1805.05246},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1805.05246}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1805.05246.svg)](https://codeofpaper.com/paper/1805.05246)

Discussion