Schreiben Sie über die Befehlszeile in das Syslog

29

Wie kann ich über /var/log/syslogdie Befehlszeile einen Eintrag in schreiben ?

Drew Noakes
quelle

Antworten:

37

Verwenden Sie den loggerBefehl.

logger Some message to write

Es stehen verschiedene Optionen zur Verfügung, darunter:

-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

Sehen Sie man 1 loggerfür weitere Informationen über das Werkzeug.

Drew Noakes
quelle
Ein ausführlicheres loggerBeispiel und Informationen zur Remote-Protokollierung über netcatoder Shell-Umleitung finden Sie unter: safaribooksonline.com/library/view/bash-cookbook/0596526784/…
sampablokuper
10

Alternativ können Sie syslogvon Python aus schreiben :

python -c 'import syslog; syslog.syslog("Hello World")'
Sylvain Pineau
quelle
2
Ehrliche Frage: Was wären die Vorteile der Verwendung von Python für diesen loggerBefehl gegenüber dem Befehl?
Drew Noakes
2
@DrewNoakes Wenn Sie ein - Python - Skript über die Befehlszeile ausführen, ist die Verwendung der Standardbibliothek immer besser als die Verwendung von Unterprozessen und Aufrufen logger. Sie haben bereits meine Stimme, ich erwähne nur eine Alternative.
Sylvain Pineau
Danke für die Klarstellung. Ich denke, das gilt für alle Programmiersprachen. Stimmen Sie über mich ab.
Drew Noakes