I Had Downtime Today. Here’s What I’m Doing About It.
kalzumeus.com
kalzumeus.com
On (1), this appears to have been an outage that only a subset would have noticed, so the direct message to affected users looks like a good way to communicate. I've seen other ways of handling that, both 'broadcast' and 'denial', and neither is good.
On (2), the OP's use of root cause and the unambiguous identification of cause/effect/remediation is something that others should emulate.
If you cannot identify cause of failure and build mitigation/detection/prevention for every failure, every time you fail, you are destined to spend the rest of you career reacting to broken crap. Determining root cause of every single failure is lots of work, but so is reacting to broken crap every day and night. That gets old after a while.
One factor I forgot to mention: prevention can be scheduled, incident response cannot. This is really a quality of life issue for me: if I can pick the hour I do the preventative work in, then I can pick an hour where the work will have minimal impact to the parts of my life which happen away from a computer. (All appearances to the contrary, I do occasionally get away from a computer. Not very much these last few weeks, granted, but soon hopefully quite a bit.)
However, outages requiring my immediate attention will probably happen when I want to be doing something else -- like sleeping, or spending time with family, or wooing a young lady, or eating unhealthy food and singing karaoke songs with the guys. Obviously, its in my best interest to minimize that, even more than it is generically in my interest to maximize my productivity.
While I want to apologize to users who got delayed from getting back to their lives because their toaster was on the fritz, I don't want to tell anybody else that toasters sometimes can't toast toast. It needlessly complicates their relationship with their toaster: they have no relationship with their toaster, and that is how they bloody like it.