Vous pouvez rediriger stdout et stderr du shell entier en utilisant le script pragma (au lieu de exec ) en conjonction avec exec >FILE 2>&1 , comme ceci :
script
exec >/path/to/some_log_file 2>&1
exec your_command_here
end script
Cela devrait, espérons-le, vous donner une meilleure idée de ce qui se passe. J'ai trouvé cela utile pour détecter toutes sortes de problèmes dans mes scripts parvenus. Vous pourriez dirigez le stdout de votre commande /stderr directement, mais vous passerez à côté des erreurs provenant du shell (comme les erreurs de syntaxe).
Par contre, si service est suspendu, il pourrait même pas frapper votre script, auquel cas rien de tout cela n'aidera, bien sûr.
Il y a aussi le console log déclaratif, tel que défini ici :http://upstart.ubuntu.com/cookbook/#console-log
Je n'en sais pas assez sur le démarrage pour savoir s'il est activé par défaut, mais vous pouvez l'activer par tâche par démarrage, il sortira par défaut sur /var/log/upstart/<job>.log