
Eu tenho um script inicial simples que executa um processo e o reaparece se ele travar. O problema é que, se ele travar, quero que o usuário seja alertado de que travou (porque pode ser necessário executar uma ação para evitar que ele trave novamente). Aqui está meu roteiro:
start on runlevel [2345]
stop on runlevel [016]
chdir /opt
respawn
respawn limit 5 10
exec /usr/bin/gulp --gulpfile ./lib/vendor/node/gulpfile.js 2>&1 > /var/log/gulp.log
Não que eu redirecione o erro padrão para o console (2>&1) e padronize um arquivo de log. O redirecionamento do arquivo de log FUNCIONA. Mas o erro padrão do console NÃO. Este redirecionamento de errofazfuncionará se eu executar o comando diretamente do shell.
Coisas que tentei até agora: - Adicionar 'saída do console' ao script (que supostamente redireciona a saída para /dev/console) - Usar o comando exec start-stop-daemon --start -c myuser --exec (pensando nisso porque Eu executo o trabalho inicial com sudo o /dev/console aponta para outro lugar) **este script simplesmente trava e nem funciona
Alguma outra ideia? Eu realmente preciso que a saída de erro seja colocada no console para o usuário.
Responder1
Omita o 2>&1
- isso realmente redireciona o stderr para o stdout. Você deseja que o stderr vá para o console - que é o padrão para o stderr.
exec /usr/bin/gulp --gulpfile ./lib/vendor/node/gulpfile.js > /var/log/gulp.log