A loose collection of troubleshooting techniques, separate from the troubleshoting principles.
🎫 Spreadsheet Tickets
Every now and then, I am troubleshooting a problem with enough moving parts that I decide: it’s spreadsheet time. Some tickets require a spreadsheet because of the way that a spreadsheet can bring organization and focus to an investigation. These are tickets with lots of moving parts. These are tickets where the problem seems intermittent or nondeterministic. I don’t think that the vast majority of tickets should be spreadsheet tickets — in the sense that I mean. But, a spreadsheet ticket is super helpful when it’s needed.
The spreadsheet ticket approach often is what I use to record my results as I reproduce the behavior.
❓ Be curious, strategically
Be curious. Wonder “what does that do?” or “how are we sure that x is not the problem?“.
Refine your problem statement over time. Grab your most recent Solved ticket and take a look at how much the understanding of the problem improved between when it was opened and when it was closed. Make sure that you have an accurate and sufficiently detailed understanding of the problem that is being reported. Work to improve the quality of the problem statement by asking good questions, reading the documentation and working to reproduce the problem that you are troubleshooting.
📫 Change the client
A common approach to reducing complexity that I am fond of is getting the client out of the way. This is a technique that can be applied when troubleshooting a problem that is somewhere on the client, the server or somewhere in between. To reduce complexity, we will remove some of the components in the chain and observe if the problem still happens. Eliminating client misconfiguration or interference can involve using a different client of the same type or establishing a connection from a client that takes a network path that is closer or different.
🍒 Check the low-hanging fruit
It’s better to check the low-hanging fruit in order to be sure your investigation is thorough and effective.