A seconda delle tue esigenze, syslogd potrebbe essere un altro strumento da esaminare. Il comando
theuser@tetrad:~$ logger This message is sent to syslog
registrerà il messaggio con la funzione user.notice. Con molti sistemi Linux questo sarà sufficiente per avere un file /var/log/user.log aperto e aggiunto, con altri potrebbe essere necessario definire una gestione per quella struttura e livello di registro (o, qualunque struttura si scelga - il local0 a local7 le strutture sono generalmente libere di assegnare a cose del genere.
Ha il vantaggio di essere in grado (alias configurabile) di inviare note dai computer client a un server di registrazione centrale, qualcosa che mi piace usare per tenere traccia delle azioni amministrative poiché conserva le informazioni di data e ora, utente e host in modo automatico, mantenendo le azioni in ordine .
risultato risultante nel file locale:
theuser@tetrad:~$ tail /var/log/user.log
Jan 31 07:18:37 tetrad theuser: This message is sent to syslog
Esempio per la riga di configurazione syslog su Solaris :
local5.notice ifdef(`LOGHOST', /var/log/diary, @loghost)
Nota: L' ifdef
elaboratore è preelaborato m4
, sulla macchina con il nome host / hostalias "loghost", i messaggi verranno registrati nel file / var / log / diary, su tutti gli altri, verranno inviati al servizio remoto syslog su loghost. Per testare questo tipo di configurazione, il file di configurazione può essere inviato tramite m4 per l'espansione (lasciare il -D LOGHOST
per vedere come apparirebbe su un sistema non chiamato loghost :
theuser@solstice$ /usr/ccs/bin/m4 -D LOGHOST /etc/syslog.conf
n
funzione scrive nel file? Non intendi qualcosa di simile a un UUOCecho "$*"
anziché ? Come incorpora il tag data / ora?