Como posso visualizar stdout / stderr de um aplicativo de inicialização?

12

Alguns dos comandos que tenho em aplicativos de inicialização não são iniciados corretamente quando eu faço o login. (Em particular, estou tendo problemas com o gtk-redshift.) Para depurar, eu gostaria de poder visualizar stdout / stderr. Eu não encontrei um arquivo de log para aplicativos de inicialização. Tentei redirecionar para um arquivo usando "> > log.txt" sem sucesso.

Como posso ver stdout / stderr para um aplicativo de inicialização? Melhor ainda, existe um arquivo de log para aplicativos de inicialização?

    
por Adam Paetznick 02.05.2013 / 14:46

2 respostas

7

Acho que a melhor coisa a fazer seria colocar o comando bash mais abaixo na inicialização ou colocá-lo em um script bash e selecionar isso em seus aplicativos de inicialização. Eu adicionei a opção -v para que o aplicativo registre todas as suas ações com o maior dos detalhes; alguns aplicativos têm outras configurações de detalhamento e até mesmo vários níveis que você pode especificar.

O redirecionamento &> usado é o mesmo que 2>&1 , pois redireciona toda a saída do programa ( stderr, stdout ) para o arquivo especificado, ou seja, &>/home/mike/redshift.log .

Aqui está o comando que pode ser usado para configurar o registro, e pode ser usado para outros programas, se modificados apropriadamente.

bash -c "setsid /usr/bin/gtk-redshift -v -l 40.77:-73.9 -t 6500:5500 &>/home/mike/redshift.log"

Estas são apenas configurações de teste de amostra, substitua esses valores por seus próprios; talvez você queira colocar o comando modificado apropriadamente em um wrapper bash para sua entrada de inicialização, pois a linha de comando acima é bem longa.

Um trecho do log criado em /home/mike/redshift.log :

Gamma ramp size too small: 0
Failed to start adjustment method randr.
Trying next method...
Location: 40.770000, -73.900002
Brightness: 1.00
Gamma: 1.000, 1.000, 1.000
Using method 'vidmode'.

O registro continua e deve fornecer as informações necessárias. Alguns programas, como o vlc , possuem opções que você pode configurar para que seu registro possa ser enviado ao syslog, mas eu prefiro que cada programa tenha seu próprio log separado.

    
por user76204 02.05.2013 / 19:30
-2

Por favor, verifique /var/log/syslog . É comum para todas as aplicações.

    
por thefourtheye 02.05.2013 / 14:58