Jak skierować wyniki dziennika niektórych jednostek do określonego pliku?


12

Mam system z kilkoma uruchomionymi demonami (jako jednostkami systemowymi), które wysyłają informacje dziennika do dziennika w Arch Linux. Chcę skierować wyniki dziennika niektórych plików jednostkowych do osobnego pliku tekstowego, którego lokalizację podaję, zasadniczo tworząc plik dziennika dla podzbioru jednostek. Jak mogę to zrobić?


Odpowiedzi:


10

Wydaje się, że nie jest to możliwe i niepożądane przez upstream (przekierowanie stdout / stderr do pojedynczych plików) patrz np. Http://lists.freedesktop.org/archives/systemd-devel/2012-March/004705.html - przeczytaj cały wątek, aby uzyskać więcej informacje kontekstowe, jak to ma działać.

To, co możesz zrobić, to albo zalogować się do syslog, i w ten sposób zapisać do poszczególnych plików. Lub na odwrót, jeśli urządzenie wywołuje jakiś program, który może sam zapisać dziennik, użyj go do zalogowania się do pliku.

Możesz także rzucić okiem na View stdout / stderr usługi systemd

To, co już możesz zrobić z obecną konfiguracją, to
journalctl -u yourunitname > yourlogfile_for_yourunitname
przekierowanie całego wyniku dziennika dla jednostki „twoja nazwa jednostki” do pliku.

W drugiej części należy również zapoznać się ze wskazówkami Lennarta z wyżej wymienionego wątku listy adresowej:

W najnowszych wersjach systemowych coś podobnego systemd-journalctl -o cat _SYSTEMD_UNIT=postgresql.servicepowinno stworzyć bardzo proste wyjście, które zawiera tylko rzeczywiste komunikaty i nic więcej. Możesz nawet przekazać „-f” i uruchomić to na żywo. ”

EDYCJA: W rzeczywistości, w nowszych wersjach systemowych polecenie jest tylko dziennikiem i z tego, co mogę powiedzieć, wyżej wspomniane długie polecenie jest takie samo jak journalctl -u yourunitnamei można -ftam również „śledzić” wyjście (jak w tailf lub tail-f).

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.