Selon vos besoins, syslogd peut être un autre outil à parcourir. La commande
theuser@tetrad:~$ logger This message is sent to syslog
enregistrera le message avec la fonction user.notice. Avec de nombreux systèmes Linux, cela suffira pour ouvrir et ajouter un fichier /var/log/user.log, avec d'autres, vous devrez peut-être définir une gestion pour cette installation et ce niveau de journal (ou, selon l'installation que vous choisissez - le local0 aux installations locales7 sont généralement libres d'affecter à des choses comme celle-ci.
Il a l'avantage de pouvoir (alias configurable) envoyer des notes des machines clientes à un serveur de journalisation central, quelque chose que j'aime utiliser pour garder une trace de l'action administrative car il préserve automatiquement l'horodatage, les informations utilisateur et hôte, tout en gardant les actions dans l'ordre .
sortie résultante dans le fichier local:
theuser@tetrad:~$ tail /var/log/user.log
Jan 31 07:18:37 tetrad theuser: This message is sent to syslog
Exemple de ligne de configuration syslog sous Solaris :
local5.notice ifdef(`LOGHOST', /var/log/diary, @loghost)
Remarque: Le ifdef
est prétraité avec m4
, sur la machine avec le nom d'hôte / hostalias "loghost", les messages seront enregistrés dans le fichier / var / log / diary, sur tous les autres, ils seront envoyés au service syslog distant sur loghost. Pour tester ce type de configuration, le fichier de configuration peut être envoyé via m4 pour l'expansion (laissez le -D LOGHOST
pour voir à quoi il ressemblerait sur un système non appelé loghost :
theuser@solstice$ /usr/ccs/bin/m4 -D LOGHOST /etc/syslog.conf
n
fonction écrit-elle dans le fichier? Ne voulez-vous pas dire quelque chose comme unecho "$*"
plutôt que UUOC ? Comment intègre-t-il la balise date / heure?