I have been catching up on my reading recently and one of the books I have been trying looking forward to reading is ReleaseIt. I had heard very good things about the book and to my delight they are true. If you are a developer building almost any sort of application but in particular working on java based web applications you need to read this book! I wish it had been available years ago and that I had read it.
On the last couple if java web projects I have worked on we implemented a form of system health check which allowed us to interrogate the running application and retrieve data about it’s health. Implementing this sort of feature started (for me) as a way of knowing the properties a particular server was using. Production environments are particularly opaque for most development teams for good reasons but this makes problem diagnosis very difficult, especially when there are problems just following a major update and the pressure is on to find a solution. Tension is high and although everyone wants the problem found, everyone is also just as keen for the problem not to be theirs.
Having a page at lists the properties and their values (except passwords) available internally to the development team can really speed up problem diagnosis.
The problems we were seeing which led to the development of these status pages matched the recommendations of the book. As did an embarrassing number of other incidents. Reading the book will help me not experience the other situations that i have not encountered yet!
As a bonus it’s a really easy read. Highly recommended.