Isso é para um sistema desktop? Você já pensou em usar gerenciador de rede ou wicd . Essas ferramentas cuidam muito disso para você automaticamente.
How can I debug these scrips, e.g. what happened and what was executed?
Você pode querer usar algo como logger para enviar informações de depuração para o syslog. Ou você poderia simplesmente colocar alguns comandos de eco aqui e ali para escrever coisas em um arquivo em algum lugar.