Gracias Gracias:  0
Me Gusta Me Gusta:  0
No me Gusta No me Gusta:  0
Mostrando resultados del 1 al 3 de 3

Tema: Usando journalctl - Basico

  1. #1
    Fecha de Ingreso
    17-febrero-2012
    Ubicación
    Somewhere in the third planet of the Solar System ;)
    Mensajes
    1.319
    Post Thanks / Like
    Poder de Credibilidad
    9

    Usando journalctl - Basico

    Hola,

    Este articulo aunque fue actualizado en noviembre del 2016, me pareció interesante y útil para el arsenal de reserva cuando hay problemas que resolver. Es una traducción hecha desde el Ingles y su autor es aparentemente de Serbia, así que algunos errores gramaticales habían en su articulo que he tratado de corregir sin que se pierda la esencia. Las criticas desde ya aceptadas. Lol.

    ...se me olvidaba al final del post hay una copia en formato .pdf, para quien la quiera conservar de esa manera. ..por nada!

    Cómo usar el comando journalctl de Systemd para administrar los registros
    Mihajlo Milenovic
    8-10 minutes

    A pesar de parte de la publicidad negativa, systemd ha traído grandes nuevas funcionalidades al sistema operativo Linux. El registro es uno de ellos. Antiguamente, antes de systemd, comprobar los registros y los problemas de resolución de problemas era a veces algo muy desagradable porque los registros de diferentes programas estaban dispersos en diferentes archivos y había que comprobar las marcas de tiempo en todos y cada uno de ellos. Por supuesto que también había un archivo syslog, pero a veces no era tan verboso como se necesitaba. El sistema nos trae un demonio de diario llamado journald que permite la gestión centralizada de los registros. Estos registros pueden ser filtrados y manipulados por una utilidad llamada journalctl. En este artículo repasaremos el uso básico de las utilidades.

    Qué es journald.


    El journald es un servicio que recopila y almacena registros de muchas fuentes y crea archivos de registro estructurados indexados que son fáciles de interpretar. Algunas de las fuentes que utiliza journald
    • Mensajes de registro del núcleo, vía kmsg
    • Mensajes simples de registro del sistema, a través de la llamada a syslog de libc
    • Mensajes de registro de sistema estructurados a través de la API nativa de Journal
    • Salida estándar y error estándar de los servicios del sistema
    La idea es tener todos los mensajes de registro centralizados, sin importar de qué aplicación provengan.

    Configuración de la hora


    Para que los registros sean útiles, debe tener la hora correcta del sistema. Los registros pueden tener hora por UTC o por hora local. Generalmente se guardan ambas marcas de tiempo. Así que vamos a configurar la zona horaria en primer lugar
    Código PHP:
    sudo timedatectl set-timezone Europe/Belgrade 
    Este comando establece la hora en la zona horaria de Europa Central, pero si estás en cualquier otro lugar del mundo, sólo tienes que entrar en el continente y pulsar la pestaña para ver las ciudades que puedas elegir. No importa si no es tu ciudad, yo tampoco vivo en Belgrado, es la gran ciudad más cercana. A continuación se muestra el estado de la zona horaria
    miki@ThinkPad-X220T:~$ timedatectl status
    Local time: Mon 2016-11-14 18:40:46 CET
    Universal time: Mon 2016-11-14 17:40:46 UTC
    RTC time: Mon 2016-11-14 17:40:46
    Time zone: Europe/Belgrade (CET, +0100)
    Network time on: yes
    NTP synchronized: yes
    RTC in local TZ: no

    1) Visualización de registros


    Ahora que tenemos la hora correcta, continuemos viendo los registros. El comando básico para ver los registros es:
    Código PHP:
    journalctl 
    Obtendrá una salida similar a esta:
    -- Logs begin at Sun 2016-11-13 17:38:07 CET, end at Mon 2016-11-14 18:42:51 CET
    Nov 13 17:38:07 ThinkPad-X220T systemd-journald[344]: Runtime journal (/run/log/
    Nov 13 17:38:07 ThinkPad-X220T kernel: microcode: microcode updated early to rev
    Esta es la primera línea, seguida de muchas líneas. Vemos que los registros comienzan desde el último arranque del sistema. La última vez reinicié la computadora ayer. De forma predeterminada, journald no guarda los registros a través de los reinicios, porque eso haría que los archivos de registro se hicieran más grandes con el tiempo. El registro parece similar al syslog, pero tiene muchas más fuentes. Dijimos que tanto la hora UTC como las de la zona horaria local se guardan, por lo que también puede ver los mismos registros con las marcas de hora UTC.
    Código PHP:
    journalctl --utc 
    Sí, sé que los registros son enormes. ¡Dijimos que los registros serán geniales otra vez! Pero son demasiado grandes, por lo que el journald tiene muy buena característica de filtrado de registros.

    Si desea ver los registros desde algún punto en el tiempo hasta ahora, necesita usar un comando formateado de esta manera:
    miki@ThinkPad-X220T:~$ journalctl --since "2016-11-14 19:15:00"
    -- Logs begin at Sun 2016-11-13 17:38:07 CET, end at Mon 2016-11-14 20:07:51 CET
    Nov 14 19:17:01 ThinkPad-X220T CRON[6044]: pam_unix(cron:session): session opene
    Nov 14 19:17:01 ThinkPad-X220T CRON[6049]: (root) CMD ( cd / && run-parts --re
    Nov 14 19:17:01 ThinkPad-X220T CRON[6044]: pam_unix(cron:session): session close
    Nov 14 19:22:51 ThinkPad-X220T nm-applet[4929]: ModemManager is not available fo

    2) Filtrar registros por tiempo.


    Esto sigue siendo demasiado grande, así que podemos hacerlos más pequeños si añadimos un operando más, después de --since, y eso será hasta --until
    miki@ThinkPad-X220T:~$ journalctl --since "2016-11-14 19:00:00" --until "2016-11-14 19:05:00"
    -- Logs begin at Sun 2016-11-13 17:38:07 CET, end at Mon 2016-11-14 20:21:23 CET
    Nov 14 19:01:16 ThinkPad-X220T nm-applet[4929]: ModemManager is not available fo
    Nov 14 19:02:51 ThinkPad-X220T nm-applet[4929]: ModemManager is not available fo
    En esos cinco minutos, solo había dos mensajes de registro.

    Desde (--since) y hasta (--until) los flags acepten marcas de tiempo en el formato AAAA-MM-DD HH: MM: SS, pero esa no es la única manera. Si, por ejemplo, un usuario se queja de que su servidor no funciona en los últimos 5 minutos, puede examinar registros como este:

    journalctl --since "5 minutes ago"
    -- Logs begin at Sun 2016-11-13 17:38:07 CET, end at Mon 2016-11-14 20:22:21 CET
    Nov 14 20:21:21 ThinkPad-X220T gnome-terminal-[7867]: Allocating size to GtkBox
    Nov 14 20:21:21 ThinkPad-X220T gnome-terminal-[7867]: Allocating size to GtkBox
    Nov 14 20:21:23 ThinkPad-X220T gnome-terminal-[7867]: Allocating size to GtkBox
    Nov 14 20:22:20 ThinkPad-X220T apport-gtk[5977]: gdk_pixbuf_composite: assertion
    Nov 14 20:22:21 ThinkPad-X220T systemd[3634]: Started Notification regarding a c
    También entiende palabras como ayer (yesterday) o hoy (today), por lo que puede buscar registros desde (--since) ayer (yesterday) o hoy (today).

    3) Configuración del registro a través de reinicios


    Todo esto es más útil si tiene los registros persistentes en todos los reinicios. Si desea que los registros permanezcan después de arrancar, debe habilitarlo manualmente. Primero cree el directorio donde se va a registrar
    Código PHP:
    sudo mkdir -/var/log/journal 
    A continuación, edite el archivo de configuración para que se registre de forma persistente.
    Código PHP:
    sudo sed -i.orig 's/#Storage=auto/Storage=persistent/g' /etc/systemd/journald.conf 
    Después de esto puede reiniciar su máquina y comprobar si los arranques se extienden a través de los reinicios con el siguiente comando:
    miki@ThinkPad-X220T:~$ journalctl --list-boots
    -1 7917f2c3498d4de89e94701ca8049245 Mon 2016-11-14 20:47:49 CET—Mon 2016-11-14 2
    0 438c0a9258aa47fcbf88daf91106aaa3 Mon 2016-11-14 20:56:55 CET—Mon 2016-11-14 2


    Reinicié el ordenador dos veces y ambos arranques están registrados. Pensé que el arranque anterior también se guardaría, pero no fue así. Por lo tanto, sólo se registrarán los reinicios que se realicen después de configurar los registros persistentes.

    4) Gestionar registros de diferentes arranques.


    Si ahora desea ver sólo los registros de este arranque, utilice el comando:
    Código PHP:
    journalctl -
    Puede utilizar el número de arranque para elegir un arranque específico
    Código PHP:
    journalctl --
    O puedes usar el identificador de arranque
    Código PHP:
    journalctl -b 7917f2c3498d4de89e94701ca8049245 
    El filtrado basado en el tiempo también funcionará
    Código PHP:
    journalctl -b 0 --since "15 minutes ago" 
    5) Filtrado por servicio e id.

    Supongamos que desea ver los registros por un solo programa. Buscaré registros de fprintd.
    journalctl -u fprintd.service
    -- Logs begin at Mon 2016-11-14 20:47:49 CET, end at Mon 2016-11-14 21:28:03 CET
    Nov 14 20:48:32 ThinkPad-X220T systemd[1]: Starting Fingerprint Authentication D
    Nov 14 20:48:32 ThinkPad-X220T systemd[1]: Started Fingerprint Authentication Da
    Nov 14 20:48:32 ThinkPad-X220T fprintd[3413]: user 'miki' claiming the device: 0
    Nov 14 20:48:32 ThinkPad-X220T fprintd[3413]: now monitoring fd 15
    Nov 14 20:48:32 ThinkPad-X220T fprintd[3413]: device 0 claim status 0
    Nov 14 20:48:33 ThinkPad-X220T fprintd[3413]: no longer monitoring fd 15
    Nov 14 20:48:33 ThinkPad-X220T fprintd[3413]: released device 0
    -- Reboot --
    También puede filtrar los registros por UID. Primero necesita obtener el UID de su usuario.
    miki@ThinkPad-X220T:~$ id -u miki
    1000
    Y a continuación puedes usar ese uid para filtrar los registros.
    Código PHP:
    journalctl _UID=1000 --since "25 minutes ago" 
    También puedes filtrar por GID

    miki@ThinkPad-X220T:~$ journalctl -F _GID
    30
    102
    130
    1000
    114
    118
    104
    126
    109
    0
    Ahora puede filtrar por cualquiera de esos GIDs
    Código PHP:
    journalctl _GID=114 
    Filtrado de registros por ruta de acceso al ejecutable:
    Código PHP:
    journalctl /usr/bin/sudo 
    Visualización de registros en tiempo real.
    Código PHP:
    journalctl -
    Si desea que sus registros se muestren en texto plano para copiar y pegar fácilmente, puede utilizar la opción "no pager".
    Código PHP:
    journalctl --no-pager 
    6) Visualización de mensajes del kernel y eliminación de registros antiguos.

    El journalctl también puede mostrar mensajes del kernel. De forma predeterminada, se mostrará desde el inicio actual.
    Código PHP:
    journalctl -
    Si desea mensajes del kernel desde el arranque anterior, utilice el flag -b -1.
    Código PHP:
    journalctl ---
    Para comprobar la cantidad de espacio en disco que utilizan sus registros, puede utilizar este comando.
    journalctl --disk-usage
    Archived and active journals take up 24.0M on disk.
    Si sus logs han crecido en tamaño, usted puede utilizar el aspirador (vacuum) para limpiar el más viejo. Bueno, no realmente una aspiradora (vacuum), pero el comando se llama aspiradora (vacuum).
    Código PHP:
    sudo journalctl --vacuum-size=16M 
    Esto reducirá el tamaño del registro a 16MB.

    Conclusión.


    Hemos pasado por comandos básicos de journald que hacen que el registro sea genial de nuevo. Esto le ayudará mucho la próxima vez que tenga que solucionar algún problema difícil con su servidor Linux o su ordenador de sobremesa con systemd. El sistema nos trae grandes herramientas y la publicidad negativa que obtuvo temprano fue sólo una reacción contra el cambio de herramientas viejas que la gente fue utilizada también. Ya me acostumbré a Systemd y no sé cómo vivir sin él. Esto es todo por este artículo, gracias por leerlo y que tengan un buen día.

    About Mihajlo Milenovic

    Miki is a long time GNU/Linux user, Free Software advocate and a freelance
    system administrator from Serbia. Got introduced to GNU/Linux in year 2003
    on old AMD Duron computer, and since than always eager to learn new stuff
    about this system. From 2016 writes for Linoxide to share his experiences
    with wider audience.

    Acerca de Mihajlo Milenovic
    Miki es un usuario de GNU/Linux desde hace mucho tiempo, defensor del software libre e independiente.
    administrador de sistemas de Serbia. Fue introducido a GNU/Linux en el año 2003
    en el viejo ordenador AMD Duron, y desde entonces siempre deseoso de aprender cosas nuevas
    sobre este sistema. Desde 2016 escribe para Linoxide para compartir sus experiencias
    con un público más amplio.

    Fuente:https://linoxide.com/linux-how-to/sy...-command-logs/
    Agradecimiento a su autor: Mihajlo Milenovic (Miki) ...a quien todavía no he podido contactar, pero de seguro no pondrá objeciones por traducir y difundir su trabajo.


    Archivo Adjunto 2233

    Have a lot of Fun!!
    Archivos Adjuntos Archivos Adjuntos
    Última edición por gvcastellon; 05-may-2018 a las 14:36 Razón: Dar formato a un texto plano e ilegible
    The box said: 'Requires Windows 95 or better' ...SO I INSTALLED LINUX!


    Kernel: 4.17.2-2.gddde22d-default x86_64
    Distro: openSUSE Leap 15.0 / TW
    KDE Plasma 5.12.5
    Mobo: ASUSTeK ROG STRIX B350-F GAMING
    CPU: AMD Ryzen 7 1700X 8-Core
    RAM-16.0 GiB
    Video-Radeon RX 460/560D

  2. #2
    Fecha de Ingreso
    19-marzo-2005
    Ubicación
    En un lugar del planeta Tierra
    Mensajes
    17.445
    Post Thanks / Like
    Poder de Credibilidad
    10
    Hola gvcastellon.

    1º tendrás que informar al autor del texto de que se lo has traducido, como medida de cortesia. Lo ideal hubiera sido pedir autorización. Aquí tienes los términos https://linoxide.com/tos/

    2º Por internet hay varios scripts para convertir Word en BBCode, no eres el 1º que escribe en el Word y quiere pasarlo a un foro.
    convert word document to bbcode

    Saludos.
    NORMAS A CUMPLIR EN LOS FOROS (Lectura obligatoria) Lo siento, no contesto privados sobre problemas con GNU/Linux.
    Síguenos en TWITTER y en FACEBOOK
    Código:
    Buscador de   Alojamiento      Alojamiento     Otros
     paquetes:    de imágenes:     de ficheros:    buscadores:
    Search        TinyPic          Ifile Wuala     Simple y Facil
    Webpinstant   Paste Suse       SendSpace       TextSnip  Cl1p

  3. #3
    Fecha de Ingreso
    17-febrero-2012
    Ubicación
    Somewhere in the third planet of the Solar System ;)
    Mensajes
    1.319
    Post Thanks / Like
    Poder de Credibilidad
    9
    Cita Iniciado por DiabloRojo Ver Mensaje
    Hola gvcastellon.

    1º tendrás que informar al autor del texto de que se lo has traducido, como medida de cortesia. Lo ideal hubiera sido pedir autorización. Aquí tienes los términos https://linoxide.com/tos/

    2º Por internet hay varios scripts para convertir Word en BBCode, no eres el 1º que escribe en el Word y quiere pasarlo a un foro.
    convert word document to bbcode

    Saludos.
    Hola DR, estoy tratando de contactar al autor, pero todavía no lo logro, gracias por aclarar este punto tan importante.

    Lo de BBCode no tenia ni idea, ya lo estaré revisando.

    Gracias por las aclaraciones.

    Keep in touch!
    The box said: 'Requires Windows 95 or better' ...SO I INSTALLED LINUX!


    Kernel: 4.17.2-2.gddde22d-default x86_64
    Distro: openSUSE Leap 15.0 / TW
    KDE Plasma 5.12.5
    Mobo: ASUSTeK ROG STRIX B350-F GAMING
    CPU: AMD Ryzen 7 1700X 8-Core
    RAM-16.0 GiB
    Video-Radeon RX 460/560D

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Temas Similares

  1. Yast2 da error al arrancar
    By Susefan1 in forum Software
    Respuestas: 10
    Último mensaje: 01-dic-2014, 16:32
  2. Respuestas: 6
    Último mensaje: 02-ene-2009, 20:04
  3. ¿Cómo instalar openSUSE 11.0 por red local usando Windows XP?
    By EvilTux in forum Instalación y Actualizaciones
    Respuestas: 9
    Último mensaje: 01-ene-2009, 07:02
  4. Comandos Básico de linux
    By gimakos in forum FAQs, Manuales y Tutoriales
    Respuestas: 5
    Último mensaje: 21-jul-2007, 01:34
  5. Respuestas: 0
    Último mensaje: 19-may-2006, 11:43

Tags for this Thread

Marcadores

Normas de Publicación

  • No puedes crear nuevos temas
  • No puedes responder mensajes
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •