GNU/Linux >> Linux Esercitazione >  >> Linux

Linux Centos con timestamp dmesg

Soluzione 1:

dmesg legge il buffer circolare del log del kernel. Non fa timestamp. Quello che dovresti fare è configurare syslog per prendere i log del kernel da quel buffer e inviarli a un file (se non è già impostato per farlo). Nota, la configurazione predefinita di CentOS 5.x syslog invia i log del kernel a /var/log/messages , come ricordo.

Se desideri inviare tutti i log del kernel (dmesg) a /var/log/kern.log , utilizzando il demone syslog predefinito, aggiungeresti una riga come la seguente a /etc/syslog.conf

kern.*                         /var/log/kern.log

Soluzione 2:

C'è la soluzione "Abilitazione dei timestamp per dmesg/Kernel Ring Buffer"

Potresti aggiungere:

printk.time=1

al kernel cmdline.

Quanto a me, ho aggiunto a rc.local su tutte le macchine con pupazzo. Per me è più facile) :

if test -f /sys/module/printk/parameters/time; then
   echo 1 > /sys/module/printk/parameters/time
fi

Soluzione 3:

Ho scritto questo semplice script. Sì, è lento. Se vuoi qualcosa di più veloce, scrivi effettivamente uno script su perl, python o qualcos'altro. Sono sicuro che questo semplice script può darti un'idea di come può essere calcolato.

Tieni presente che ho ignorato la frazione di secondi registrata in ciascuna riga (dopo il . nel timestamp).

#!/bin/bash
localtime() {
 perl -e "print(localtime($1).\"\n\");";
}

upnow="$(cut -f1 -d"." /proc/uptime)"
upmmt="$(( $(date +%s) - ${upnow} ))"

dmesg | while read line; do
 timestamp="$(echo "${line}" | sed "s/^\[ *\([0-9]\+\).*/\1/g")"
 timestamp=$(( ${timestamp} + ${upmmt} ))
 echo "${line}" | sed "s/^[^]]\+]\(.*\)/$(localtime "${timestamp}") -\1/g"
done

Spero possa essere d'aiuto. :)


Linux
  1. Come installare Linux Kernel 5.0 su CentOS 7

  2. Linux – I diversi kernel Linux/unix sono intercambiabili?

  3. Modifica il kernel predefinito (avvio con il vecchio kernel) – CentOS/RHEL/OEL 7

  4. CentOS / RHEL:esclusione con Yum per gli aggiornamenti del kernel

  5. Debug del kernel Linux con QEMU

Kernel Linux vs. Kernel Mac

Gestisci e monitora i moduli del kernel Linux con Kmon

Stampa timestamp con output del comando Ping in Linux

Patch del kernel Linux Raspberry Pi con KernelCare GRATIS!

Visualizza le informazioni sul modulo del kernel Linux con il comando Modinfo

Aggiorna il kernel Linux di CentOS 8