In C registriamo in questo modo:
syslog( LOG_INFO, "proxying %s", url );
In Linux come possiamo controllare il registro?
In C registriamo in questo modo:
syslog( LOG_INFO, "proxying %s", url );
In Linux come possiamo controllare il registro?
Risposte:
Che ne dici less /var/log/syslog?
/etc/syslog.conf
tail -f /var/log/syslogè davvero carino perché mostra l'output più recente mentre entra nel syslog. Può essere utile se stai cercando di risolvere qualcosa dal vivo, piuttosto che guardare a qualcosa che è strettamente nel passato.
Su Fedora 19, sembra che la risposta sia /var/log/messages. Anche /etc/rsyslog.confse controlla se è stato modificato.
Per impostazione predefinita è registrato nel registro di sistema in /var/log/syslog, quindi può essere letto da:
tail -f /var/log/syslog
Se il file non esiste, controlla /etc/syslog.confper vedere il file di configurazione per syslogd. Tieni presente che il file di configurazione potrebbe essere diverso, quindi controlla il processo in esecuzione se utilizza un file diverso:
# ps wuax | grep syslog
root /sbin/syslogd -f /etc/syslog-knoppix.conf
Nota: in alcune distribuzioni (come Knoppix) tutti i messaggi registrati potrebbero essere inviati a terminali diversi (ad es. /dev/tty12), Quindi per accedere ad es. tty12Prova a premere Control+ Alt+ F12.
È inoltre possibile utilizzare lo lsofstrumento per scoprire quale file di registro syslogdsta utilizzando il processo, ad es
sudo lsof -p $(pgrep syslog) | grep log$
Per inviare il messaggio di prova a syslogd nella shell, puoi provare:
echo test | logger
Per la risoluzione dei problemi, utilizzare uno strumento di traccia ( stracesu Linux, dtrusssu Unix), ad esempio:
sudo strace -fp $(cat /var/run/syslogd.pid)
Un'utilità molto interessante è journalctl.
Ad esempio, per mostrare syslog alla console:, journalctl -t <syslog-ident>dov'è l' <syslog-ident>identità che hai dato alla funzione openlogper inizializzare syslog.
syslog-ngcon il servizio systemd, è possibile visualizzare syslog conjournalctl --unit=syslog-ng@default.service
Se ti piace Vim, ha un'evidenziazione della sintassi incorporata per il file syslog, ad esempio evidenzierà i messaggi di errore in rosso.
vi +'syntax on' /var/log/syslog
sul router Asus potrebbe essere fatto tramite
:/bin# busybox
ci sono anche altri comandi relativi a.
syslogscrive nel registro di sistema? (A meno che tu non stia parlando di quello di livello inferiore per accedere al buffer circolare dei messaggi del kernel, ma dubito cheurlsia unint.)