Escribir en syslog desde la línea de comando

29

¿Cómo puedo escribir una entrada /var/log/syslogdesde la línea de comandos?

Drew Noakes
fuente

Respuestas:

37

Usa el loggercomando.

logger Some message to write

Hay varias opciones disponibles, que incluyen:

-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

Consulte man 1 loggerpara obtener más información sobre la herramienta.

Drew Noakes
fuente
Para obtener un loggerejemplo más detallado y para el registro remoto a través de la netcatredirección de shell, consulte: safaribooksonline.com/library/view/bash-cookbook/0596526784/…
sampablokuper el
10

Alternativamente, puede escribir syslogdesde python:

python -c 'import syslog; syslog.syslog("Hello World")'
Sylvain Pineau
fuente
2
Pregunta honesta: ¿cuáles serían los beneficios de usar Python para esto sobre el loggercomando?
Drew Noakes
2
@DrewNoakes Si está ejecutando un script - python - desde la línea de comando, usar la biblioteca estándar siempre es mejor que confiar en el subproceso y la llamada logger. Ya tienes mi voto, solo estoy mencionando una alternativa.
Sylvain Pineau
Gracias por la aclaración. Supongo que esto es cierto para todos los lenguajes de programación. Dame un voto.
Drew Noakes