Jak mogę wysłać wiadomość do dziennika systemowego z wiersza poleceń?

46

W starszych systemach Linux loggerkomendę można użyć do wysłania komunikatu dziennika do syslog.

Czytanie, gdzie loggerloguje się wiadomości w Arch Linux? , wygląda na to, że syslogkomunikaty i loggeraplikacja wiersza poleceń komunikują się z systemddziennikiem tylko wtedy, gdy skonfigurowano gniazdo do przekazywania wiadomości .

Jaki jest współczesny odpowiednik loggerpolecenia? Jak mogę wysłać wiadomość bezpośrednio do dziennika systemowego z wiersza poleceń?

mikemaccana
źródło
możemy również skonfigurować rsyslog, aby pobierał dzienniki dziennika jako dane wejściowe, a następnie wyprowadzał je jako pliki również przez rsyslog.
Luv33preet,

Odpowiedzi:

59

systemd-cat jest odpowiednikiem rejestratora:

echo 'hello' | systemd-cat

W innym terminalu działa journalctl -f:

Feb 07 13:38:33 localhost.localdomain cat[15162]: hello

Priorytety są określone tylko przez część ciągu:

echo 'hello' | systemd-cat -p info
echo 'hello' | systemd-cat -p warning
echo 'hello' | systemd-cat -p emerg

Ostrzeżenia są odważne, awaryjne są odważne i czerwone. Straszna rzecz.

Możesz także użyć „identyfikatora”, który jest dowolny, aby określić nazwę aplikacji. Są jak Syslog za starych obiektów, ale nie jesteś zablokowany z dawnych rzeczy, jak lpr uucp nntpi coraz opisowej local0through local7.

echo 'hello' | systemd-cat -t someapp -p emerg

Jest zalogowany jako:

Feb 07 13:48:56 localhost.localdomain someapp[15278]: hello
mikemaccana
źródło
6
Bardzo przydatne. Możesz filtrować według wiadomości dziennika utworzonych za -tpomocą następującego polecenia:journalctl -t someapp
Att Righ