Faultline: a small fault-injection tool
A Go tool for repeatable process and network failure tests against your own services.
Faultline is an optional Go CLI that runs controlled failure tests against your own local services. It can stop a process or add network delay, then save the test setup and results so you can reproduce the run.
Build it only after the primary project and interview work are on track. Start with one fault type and one assertion. Keep the tool out of your critical path if the setup becomes fragile.
What it does
Run one fault at a time in a disposable local environment. The report should include the target, configuration, random seed when used, observed result, and command to reproduce it. Do not fill a real disk or inject faults into systems you do not own.
Read before building
- Chaos Monkey documentation (Netflix): the tool that started the discipline. Scope your kill-tick injection to its philosophy, not a cron script.
- Netflix TechBlog: Chaos Engineering Upgraded: the move from "randomly kill" to "hypothesis-driven experiments". Format your report around the hypothesis model.
- Google Cloud: Getting started with chaos engineering: a modern primer to calibrate scope for a solo project.
When to build it
Build it only if you have repeated a failure test by hand and the tool will make that test clearer. When the compression rule applies, skip Faultline first. A reproducible test inside Ledgerline or Logsmith is enough evidence on its own.