In a response to my
recent post on fault injection, Mark asks if I know of any publicly-available
fault-injection frameworks. Yes! In fact, much of the fault-injection
work done at Microsoft is built on top of work done by Microsoft Research, and you
can also take advantage of their work. In particular, look at the Detours tool
for injecting code into an existing binary.
Unfortunately, Detours only does native code, not managed code. We do have managed
code injection tools internally, but I don’t see them on the research site, so I guess
they are ‘top secret’. You are in luck, however; I’ve also heard of a well-known
fault-injection tool called Holodeck,
that does do managed code. This also has the advantage of providing a nice user
interface and support tools – a point-n-click operation. Detours is a bit more
low-level, and requires some coding and work on your part. Unfortunately Holodeck
does appear to be pretty pricy - $5000 for a single license. Let’s keep looking…
search on fault injection finds a bazillion hits – take a look there and see if
you can find a tool that meets your needs.