169 похожих чатов

У меня вопрос, а почему в systemd все так плохо

с записью того, что программа выводит в stdout/stderr? stderr по умолчанию вообще съедается, stdout часто как будто тоже куда-то пропадает, не показывается в journalctl

20 ответов

52 просмотра

Большой объём сообщений?

Oleg-Kalachev Автор вопроса
Vadim "Oxyd" Priluzkiy
Большой объём сообщений?

нет, небольшой. но я так понимаю, тот же stderr вообще не записывается?

Oleg Kalachev
нет, небольшой. но я так понимаю, тот же stderr во...

Записывается. Journalctl оба потока перехватывает.

Oleg-Kalachev Автор вопроса
Vadim "Oxyd" Priluzkiy
Записывается. Journalctl оба потока перехватывает.

хм… тогда надо перепроверить.. кстати, а еще вопрос, а нет какого-то способа показать вывод именно с последнего запуска сервиса? а то там в этом журнале еще и не поймешь, что от какого запуска

Может твоё приложение криво буферузирует, говорят питон так любит делать 🤷‍♀️

Oleg-Kalachev Автор вопроса

unbuffer и stdbuf -o L это от этого?

Oleg Kalachev
хм… тогда надо перепроверить.. кстати, а еще вопро...

Ммм ну вот именно с запуска нет, но можно journalctl -xeu unit.name Тогда он отмотает лог к последнему сообщению и вообще сообщения будут более эээ, другими, а не просто строчками.

Oleg-Kalachev Автор вопроса
Vadim "Oxyd" Priluzkiy
Ммм ну вот именно с запуска нет, но можно journalc...

это кстати дико неудобно, все в одну кучу

Oleg Kalachev
это кстати дико неудобно, все в одну кучу

Что всё? То что я написал выдаст логи связанные с конкретным юнитом.

Oleg-Kalachev Автор вопроса
Vadim "Oxyd" Priluzkiy
Что всё? То что я написал выдаст логи связанные с ...

чаще всего (ну может быть только мне, не знаю), нужно смотреть логи/ошибку именно с последнего запуска юнита

Oleg Kalachev
это кстати дико неудобно, все в одну кучу

И да. Есть ещё такая штука, как journal namespaces.

Oleg Kalachev
unbuffer и stdbuf -o L это от этого?

да, но не уверен насколько это работает с разными языками

Oleg-Kalachev Автор вопроса
Vadim "Oxyd" Priluzkiy
И да. Есть ещё такая штука, как journal namespaces...

это я так понимаю, все-таки больше для разделения по юнитам, а не по запускам

Oleg-Kalachev Автор вопроса
Vadim "Oxyd" Priluzkiy
Записывается. Journalctl оба потока перехватывает.

вот это не знал, кстати, надо разбираться, возможно буферы

Vadim "Oxyd" Priluzkiy
Ммм ну вот именно с запуска нет, но можно journalc...

простите а что значит другими? не вижу разницы

Дмитрий Марков
простите а что значит другими? не вижу разницы

А зачем ты tail-у скармливаешь? Он и без этого скормит твоему пейджеру, при этом прыгнет в самый конец лога. А лог, обычно, выглядит так, с этими ключами. Там где старты, завершения, вот такие красивые штуки.

Vadim "Oxyd" Priluzkiy
screenshot А зачем ты tail-у скармливаешь? Он и без этого ск...

tail старая привычка обрезать n строк не смогу вспомнить флаг для этого у journalctl а за подсказку спасибо

Дмитрий Марков
tail старая привычка обрезать n строк не смогу всп...

А не нужно тут строки резать. Он всё равно в пейджере открывает... Ещё можно ключик -f и это будет аналогично tail -f

Vadim "Oxyd" Priluzkiy
А не нужно тут строки резать. Он всё равно в пейдж...

я просто хотел уместить два разных выхлопа в одном скриен

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта