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