Describir: Effective Instrumentation and Runtime Support for Enhancing Software Reliability