Monitoring, logging and exposing current state are the three tricks for troubleshooting.

It’s really useful to have multiple verbosity levels available, along with a way to increase these levels on the fly.