Написать в системный журнал из командной строки

Как я могу написать запись в /var/log/syslog из командной строки?

2 ответа

Использовать logger команда.

logger Some message to write

Есть несколько вариантов, в том числе:

-i Log the process ID in each line
-f Log the contents of a specified file
-n Write to the specified remote syslog server
-p Specify a priority
-t Tag the line with a specified tag

Увидеть man 1 logger для получения дополнительной информации об инструменте.

Кроме того, вы можете написать syslog из питона:

python -c 'import syslog; syslog.syslog("Hello World")'

Как разработчик, у меня редко бывает время внимательно изучать man страниц, поэтому TL; DR:

logger -p local0.notice -t ${0##*/}[$$] Hello world

Тарабарщина посередине будет переведена в вызывающую программу. Поэтому, если вы проверите нижнюю часть системного журнала, вы увидите что-то вроде:

May 07 08:27:14 ip-10-1-11-166 -bash[42108]: Hello world
Другие вопросы по тегам