Ecrire dans syslog depuis la ligne de commande

29

Comment puis-je écrire une entrée /var/log/syslogdepuis la ligne de commande?

Drew Noakes
la source

Réponses:

37

Utilisez la loggercommande.

logger Some message to write

Plusieurs options sont disponibles, notamment:

-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

Voir man 1 loggerpour plus d'informations sur l'outil.

Drew Noakes
la source
Pour un loggerexemple plus détaillé et pour la journalisation à distance via netcatou la redirection de shell, voir: safaribooksonline.com/library/view/bash-cookbook/0596526784/…
sampablokuper
10

Alternativement, vous pouvez écrire syslogdepuis python:

python -c 'import syslog; syslog.syslog("Hello World")'
Sylvain Pineau
la source
2
Question honnête: quels seraient les avantages d'utiliser Python pour cela par rapport à la loggercommande?
Drew Noakes du
2
@DrewNoakes Si vous exécutez un script - python - à partir de la ligne de commande, il est toujours préférable d'utiliser la bibliothèque standard que de s'appuyer sur un sous-processus et un appel logger. Vous avez déjà mon vote, je ne fais que mentionner une alternative.
Sylvain Pineau
Merci pour la clarification. Je suppose que cela est vrai pour tous les langages de programmation. Ayez un vote sur moi.
Drew Noakes du