A while ago I started a project to add DTrace probes into common open source applications we use at OmniTI. I added them into Apache/APR-utils (which were put back) and PostgreSQL (which were also put back). I’ve also added metrics exposure to the many applications we write internally (either in JSON or the Resmon XML DTD) over HTTP. It’s so easy these days to include an HTTP server into whatever daemon process you are writing/working on that there are almost no excuses to not wire one up and expose your application’s internal metrics. But why? Because your junk will break and it pisses me off. Eric Sproul and I recently refined a rant about why this is so important: Instrumentation and Observability.