Tengo una unidad systemd en ejecución y quiero seguir su registro.
Sé que puedo mostrar el registro de la unidad usando:
journalctl -u my_unit.service
Pero eso sólo imprime los registros actuales sin seguirlos.
Sé que también puedo seguir systemd
registros usando:
journalctl -f
Pero eso genera spam en el resultado al seguir todos los registros conocidos, por lo que tengo que buscar lo que me interesa.
Una solución temporal parece ser canalizar los registros seguidos para que grep filtre la salida, pero esa no es una solución muy sistemática:
journalctl -f | grep "what i'm interested in"
¿No existe un comando para seguir los registros de determinada unidad?
Lo que intenté, pero no funcionó:
journalctl -uf my_unit.service
Respuesta1
Descubrí que estoy usando los argumentos en mal orden. De hecho, se pueden seguir los registros para una sola unidad usando:
journalctl -fu my_unit.service
Otras variaciones de trabajo:
journalctl -f -u my_unit.service
journalctl -u my_unit.service -f
Dejournalctl
manual:
-u
,--unit=UNIT|PATTERN
Mostrar mensajes para la unidad systemd especificada
UNIT
(como una unidad de servicio), o para cualquiera de las unidades emparejadas porPATTERN
. Si se especifica un patrón, se compara una lista de nombres de unidades encontradas en el diario con el patrón especificado y se utilizan todas las coincidencias. Para cada nombre de unidad, se agrega una coincidencia para los mensajes de la unidad (" "), junto con coincidencias adicionales para los mensajes de systemd y mensajes sobre coredumps para la unidad especificada._SYSTEMD_UNIT=UNIT
Este parámetro se puede especificar varias veces.
-f, --follow
Muestre solo las entradas del diario más recientes e imprima continuamente nuevas entradas a medida que se agregan al diario.