En este paso, exploraremos algunas opciones útiles para filtrar y formatear la salida del comando docker service logs
. Estas opciones pueden ayudarte a encontrar información específica en los registros y hacer que la salida sea más legible.
Un requisito común es ver solo las entradas de registro más recientes. Puedes utilizar la opción --tail
para especificar el número de líneas a mostrar desde el final de los registros. Por ejemplo, para ver las últimas 5 líneas de registros del servicio my-service
:
docker service logs --tail 5 my-service
Esto mostrará las últimas 5 entradas de registro del servicio.
my-service.1.abcdefghijkl 64 bytes from 1.2.3.4: seq=10 ttl=50 time=123.456 ms
my-service.1.abcdefghijkl 64 bytes from 1.2.3.4: seq=11 ttl=50 time=123.456 ms
my-service.1.abcdefghijkl 64 bytes from 1.2.3.4: seq=12 ttl=50 time=123.456 ms
my-service.1.abcdefghijkl 64 bytes from 1.2.3.4: seq=13 ttl=50 time=123.456 ms
my-service.1.abcdefghijkl 64 bytes from 1.2.3.4: seq=14 ttl=50 time=123.456 ms
Otra opción útil es --since
, que te permite ver los registros generados después de una marca de tiempo (timestamp) o duración específica. Por ejemplo, para ver los registros generados en los últimos 5 minutos:
docker service logs --since 5m my-service
También puedes especificar una marca de tiempo específica en formato RFC3339Nano, fecha (YYYY-MM-DD) o fecha y hora (YYYY-MM-DDTHH:MM:SS).
Para incluir marcas de tiempo en la salida, utiliza la opción --timestamps
o la bandera -t
:
docker service logs -t my-service
Esto agregará una marca de tiempo al principio de cada entrada de registro.
2023-10-27T10:30:00.123456789Z my-service.1.abcdefghijkl PING labex.io (1.2.3.4): 56 data bytes
2023-10-27T10:30:01.123456789Z my-service.1.abcdefghijkl 64 bytes from 1.2.3.4: seq=0 ttl=50 time=123.456 ms
...
Finalmente, puedes combinar estas opciones para refinar la visualización de tus registros. Por ejemplo, para ver las últimas 10 entradas de registro con marcas de tiempo:
docker service logs --tail 10 -t my-service
Estas opciones brindan flexibilidad en cómo se ven y analizan los registros de los servicios de Docker, lo que facilita el monitoreo y la resolución de problemas de tus aplicaciones.
Antes de concluir el laboratorio, limpiemos el servicio que creamos. Podemos eliminar el servicio utilizando el comando docker service rm
.
docker service rm my-service
Verás una salida que confirme la eliminación del servicio.
my-service
Este comando detiene y elimina todas las tareas asociadas al servicio.