4 måder at se eller overvåge logfiler i realtid


Hvordan kan jeg se indholdet af en logfil i realtid i Linux? Nå, der er mange hjælpeprogrammer derude, der kan hjælpe en bruger med at sende indholdet af en fil, mens filen ændres eller opdateres løbende. Nogle af de mest kendte og mest anvendte hjælpeprogrammer til at vise et filindhold i realtid i Linux er tail-kommandoen (administrer filer effektivt).

1. hale Kommando - Overvåg logfiler i realtid

Som sagt er hale-kommando den mest almindelige løsning til at vise en logfil i realtid. Kommandoen til at vise filen har imidlertid to versioner som illustreret i nedenstående eksempler.

I det første eksempel har kommandohalen brug for -f -argumentet for at følge indholdet af en fil.

$ sudo tail -f /var/log/apache2/access.log

Den anden version af kommandoen er faktisk en kommando i sig selv: tailf. Du behøver ikke bruge switch -f , fordi kommandoen er indbygget med argumentet -f .

$ sudo tailf /var/log/apache2/access.log

Normalt roteres logfilerne ofte på en Linux-server af logrotate-værktøjet. For at se logfiler, der roteres på en daglig basis, kan du bruge kommandoen -F til at hale.

tail -F holder styr, hvis der oprettes en ny logfil og begynder at følge den nye fil i stedet for den gamle fil.

$ sudo tail -F /var/log/apache2/access.log

Som standard viser halenkommando dog de sidste 10 linjer i en fil. For eksempel, hvis du kun vil se de sidste to linjer i logfilen i realtid, skal du bruge -n -filen kombineret med -f -flagget, som vist i nedenstående eksempel.

$ sudo tail -n2 -f /var/log/apache2/access.log

2. Multitail-kommando - Overvåg flere logfiler i realtid

En anden interessant kommando til at vise logfiler i realtid er multitail-kommando. Navnet på kommandoen indebærer, at multitail-værktøjet kan overvåge og holde styr på flere filer i realtid. Multitail giver dig også mulighed for at navigere frem og tilbage i den overvågede fil.

For at installere mulitail-hjælpeprogrammet i Debian- og RedHat-baserede systemer skal du udstede nedenstående kommando.

$ sudo apt install multitail   [On Debian & Ubuntu]
$ sudo yum install multitail   [On RedHat & CentOS]
$ sudo dnf install multitail   [On Fedora 22+ version]

For at få vist output fra to logfiler samtidigt skal du udføre kommandoen som vist i nedenstående eksempel.

$ sudo multitail /var/log/apache2/access.log /var/log/apache2/error.log

3. lnav Command - Overvåg flere logfiler i realtid

En anden interessant kommando, der ligner multitail-kommando, er kommandoen lnav. Lnav-værktøjet kan også se og følge flere filer og vise deres indhold i realtid.

At installere lnav-værktøjet i Debian- og RedHat-baserede Linux-distributioner ved at udstede nedenstående kommando.

$ sudo apt install lnav   [On Debian & Ubuntu]
$ sudo yum install lnav   [On RedHat & CentOS]
$ sudo dnf install lnav   [On Fedora 22+ version]

Se indholdet af to logfiler samtidigt ved at udstede kommandoen som vist i nedenstående eksempel.

$ sudo lnav /var/log/apache2/access.log /var/log/apache2/error.log

4. mindre kommando - Vis realtidsoutput af logfiler

Endelig kan du vise live-output fra en fil med mindre kommando, hvis du skriver Shift + F .

Som med halehjælpeprogrammet starter et tryk på Shift + F i en åbnet fil i mindre grad efter slutningen af filen. Alternativt kan du også starte mindre med mindre + F -flag for at gå ind for at se live på filen.

$ sudo less +F  /var/log/apache2/access.log

Det er det! Du kan læse disse følgende artikler om logovervågning og -styring.

  1. Håndter filer effektivt ved hjælp af kommandoer med hoved, hale og kat i Linux
  2. Sådan opsættes og styres logrotation ved hjælp af Logrotate i Linux
  3. Petiti - Et open source loganalyseværktøj til Linux SysAdmins
  4. Sådan forespørges auditlogfiler ved hjælp af 'ausearch' -værktøjet på CentOS/RHEL
  5. Administrer logmeddelelser under Systemd ved hjælp af Journalctl [Omfattende vejledning]

I denne artikel viste vi, hvordan man ser data, der tilføjes i logfiler i realtid på terminalen i Linux. Du kan stille spørgsmål eller dele dine tanker om denne guide via kommentarformularen nedenfor.