Explain your approach to debugging a complex system where the root cause is not immediately apparent.