Bagaimana saya bisa mengirim pesan ke jurnal systemd dari baris perintah?

46

Dalam sistem Linux yang lebih lama, loggerperintah dapat digunakan untuk mengirim pesan log ke syslog.

Membaca ke mana loggerlog pesannya ke dalam Arch Linux? , tampaknya syslogpesan dan loggeraplikasi baris perintah hanya berbicara dengan systemdjurnal jika soket untuk penerusan pesan sudah diatur .

Jadi apa yang setara dengan loggerperintah modern? Bagaimana saya bisa mengirim pesan langsung ke jurnal systemd dari baris perintah?

mikemaccana
sumber
kita juga dapat mengonfigurasi rsyslog untuk mengambil log jurnalctl sebagai input dan kemudian mengeluarkannya sebagai file juga melalui rsyslog.
Luv33palam

Jawaban:

59

systemd-cat sama dengan logger:

echo 'hello' | systemd-cat

Di terminal lain, jalankan journalctl -f:

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

Prioritas ditentukan hanya sebagian dari string:

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

Peringatan itu tebal, darurat tebal dan merah. Barang yang mengerikan.

Anda juga dapat menggunakan 'pengidentifikasi' yang sewenang-wenang, untuk menentukan nama aplikasi. Ini seperti fasilitas lama syslog, tetapi Anda tidak terjebak dengan hal-hal kuno seperti lpr uucp nntpatau local0melalui deskriptif local7.

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

Dicatat sebagai:

Feb 07 13:48:56 localhost.localdomain someapp[15278]: hello
mikemaccana
sumber
6
Sangat berguna. Anda dapat memfilter ke pesan log yang dibuat dengan -tmenggunakan perintah berikut:journalctl -t someapp
Att Righ