Risposte:
Puoi usare:
journalctl -u service-name -f
-f, --segui
Mostra solo le voci del diario più recenti e stampa continuamente le nuove voci man mano che vengono aggiunte al diario.
Qui ho aggiunto "nome-servizio" per distinguere questa risposta dagli altri; si sostituisce il nome del servizio effettivo anziché il testoservice-name
.
È possibile inoltrare le voci del registro al journal :
systemd-cat tail -f /tmp/myapp.log /var/log/postgresql.log
e poi usa journalctl -f
... anche se, come menzionato Mark, questo stamperà tutte le voci di giornale.
Un modo per filtrare solo i messaggi da quei registri e da quella particolare unità è usare un distinto, SYSLOG_IDENTIFIER
cioè modificare il file di unità e nella [Service]
sezione aggiungere ad es.
SyslogIdentifier=my_stuff
riavviare l'unità quindi eseguire systemd-cat
con lo stesso identificatore
systemd-cat -t my_stuff tail -f /tmp/myapp.log /var/log/postgresql.log
e infine interrogare il journal solo per quel particolare identificatore:
journalctl -f -t my_stuff
Se hai bash disponibile, puoi utilizzare la sostituzione di processo come uno dei tail
parametri:
tail -f /tmp/myapp.log /var/log/postgresql/postgresql.main.log <(journalctl -f)
pgpool.service
, provare journalctl -fu pgpool.service
. Inoltre, se non lo stai eseguendo come root, assicurati che l'utente sia nel systemd-journal
gruppo!