Как я могу просмотреть stdout/stderr запускаемого приложения?
Некоторые команды, которые у меня есть в Startup Applications, не запускаются должным образом при входе в систему. (В частности, у меня проблемы с gtk-redshift.) Для отладки я бы хотел иметь возможность просматривать stdout/stderr. Я не нашел файл журнала для запуска приложений. Я попытался перенаправить в файл, используя ">> log.txt", но безуспешно.
Как я могу увидеть stdout / stderr для запуска приложения? Еще лучше, есть ли файл журнала для запуска приложений?
2 ответа
Я думаю, что лучше всего либо поместить команду bash ниже при запуске, либо поместить ее в скрипт bash и выбрать ее в своих автозагрузочных приложениях. Я добавил -v опция, поэтому приложение записывает все свои действия с максимальной детализацией; некоторые приложения имеют другие настройки многословия и даже различные уровни, которые вы можете указать.
&> используется перенаправление так же, как 2>&1 в том, что он перенаправляет весь вывод программы (stderr, stdout) к указанному файлу, т.е. &>/home/mike/redshift.log,
Вот команда, которая может использоваться для настройки ведения журнала, и она может быть использована для других программ, если они изменены соответствующим образом.
bash -c "setsid /usr/bin/gtk-redshift -v -l 40.77:-73.9 -t 6500:5500 &>/home/mike/redshift.log"
Это всего лишь примеры настроек теста, замените эти значения своими собственными; вы можете поместить команду, измененную соответствующим образом, в оболочку bash для вашей записи запуска, так как приведенная выше командная строка довольно длинная.
Выдержка из журнала, созданного в /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'.
Журнал продолжается и должен предоставить вам необходимую информацию. Некоторые программы, такие как vlc У меня есть опции, которые вы можете настроить, чтобы их журналы можно было отправлять в системный журнал, но я предпочитаю, чтобы у каждой программы был свой отдельный журнал.
Пожалуйста , проверьте /var/log/syslog, Это общее для всех приложений.