Tvarkykite sisteminių įvykių žurnalus naudodami „Journalctl Linux“

Kai valdome „Linux“ operacines sistemas, turime šimtus procesų, kuriuos turime nuolat peržiūrėti, kad serveryje ar klientų kompiuteriuose išlaikytume geriausią aptarnavimo lygį. „Linux“ aplinkoje randame „Systemd“, kuri yra novatoriška sistema, leidžianti rinkti informaciją apie lygiagrečius procesus paleidžiant operacinę sistemą.

„Systemd“ yra daugelyje „Linux“ distribucijų, tokių kaip „Fedora“, „Debian“, „Ubuntu“, „OpenSuSE“, „Arch“, RHEL, „CentOS“ ir kt. Naudodami „Systemd“ turime galimybę centralizuotai valdyti visas sistemos paslaugas ir procesus. Šiai analizei naudosime „CentOS 7“.

1. „Journald“ konfigūravimas rinkti „Systemd“ žurnalus


Iš esmės „Journald“ yra atsakingas už kasdienių operacinės sistemos įėjimų, tokių kaip paleidimo pranešimai, branduolio pranešimai, sistemos dienoraščio pranešimai, programų žurnalai, rinkimą ir rašymą. Visa „Journald“ informacija yra talpinama kelyje /etc/systemd/journald.conf, o ten įrašytos vertės atitinka vietinius sistemos reikalavimus.

Paprastas būdas vizualizuoti šio maršruto turinį yra vykdyti šią eilutę su katės parametru:

 katė /etc/systemd/journald.conf

2. Įgalinti žurnalą diske


Dauguma „Linux“ platinimų neleidžia nuolatinių pranešimų saugoti jų įkrovos sistemoje, kad būtų surinkta minėto įkrovos informacija.

Norėdami įjungti šį žurnalą, turėsite pasiekti kelią / var / log / journal ir ten redaguoti saugyklos eilutę. Norėdami ten patekti, naudosime tokius redaktorius kaip nano arba vi:

 sudo vi /etc/systemd/journald.conf sudo nano /etc/systemd/journald.conf
Pasiekę šį failą pamatysime šiuos dalykus:

Ten mes pakeisime saugyklos eilutę iš automatinės vertės į nuolatinę vertę:

Išsaugoti pakeitimusPakeitimus išsaugome naudodami „Ctrl“ + O klavišus ir išeiname iš redaktoriaus naudodami „Ctrl“ + X.

Norėdami gauti išsamios informacijos apie kiekvieną žurnalo elementą, galime įvykdyti šią eilutę:

 vyras journald.conf

3. Datos ir laiko nustatymas naudojant „Timedatectl“


Šis aspektas yra svarbus, nes teisingai sukonfigūravus datą ir laiką, įrašai bus daug patikimesni ir tikslesni.

Norėdami rodyti dabartinę datą ir laiką, vykdysime vieną iš šių eilučių:

 timedatectl timedatectl būsena
Rezultatas bus toks:

Jei nustatysite kitą laiko juostą, vykdysime šią sintaksę:

 sudo timedatectl set-timezone (miestas / šalis) sudo timedatectl set-time "HH: MM: SS"

4. Peržiūrėkite pranešimus iš žurnalų naudodami „Journalctl“


„Journalctl“ komanda yra „Linux“ įtraukta programa, leidžianti pamatyti sistemos turinį. Norėdami rodyti visus įrašus be filtravimo, vykdysime šią eilutę:
 journalctl
Rezultatas bus toks:

Toliau pateikiami filtrai, kuriuos galime naudoti su „Journalctl“:

Įkrovos pagrindo filtraiŠis filtras leidžia mums rodyti įkrovos numerius, jų ID, laiko žymes ir kitas vertes.
Tam naudosime parametrą --list-boots:

 journalctl-list-boots

Jei norime matyti įrašus iš dabartinio įkrovos, naudosime šią eilutę:

 journalctl -b
Norėdami pamatyti ankstesnius įrašus, naudosime šią eilutę:
 journalctl -b -1

Laiko filtraiNaudodami šį filtrą galime naudoti UTC formatą (Coordinated Universal Time - Coordinated Universal Time), naudodami parametrą -utc:

 journalctl -utc

Be to, filtrus galime pridėti taip:

 journalctl-nuo tada "2017-07-02 08:30:00" (Rodo rezultatus nuo nurodytos datos) journalctl-nuo šiandien (rodo dabartinės dienos rezultatus) journalctl-nuo vakar (rodomi rezultatai iš dabartinė diena prieš tai)

Peržiūrėkite naujausius įvykiusNumatytoji „Journalctl“ naudojama vertė yra 10 įrašų, tačiau jei naudojame parametrą -n, galime nurodyti mažesnį ar didesnį kiekį.

 journalctl -n 5

Peržiūrėkite branduolio sukurtus įvykiusNorėdami parodyti branduolio sukurtus pranešimus, naudosime parametrą -k taip:

 journalctl -k

Panašiai turime šias parinktis:

  • Peržiūrėkite įvykius pagal vienetus:
     journalctl -u (paslauga)
  • Peržiūrėkite įvykius pagal procesus:
     journalctl _PID = (# PID), journalctl _PID = (PID) -nuo šiandien, journalctl _PID = (PID) -nuo vakar
  • Peržiūrėkite įvykius pagal vartotojo ar grupės ID:
     journalctl _UID = 1000
  • Peržiūrėkite konkretaus failo sukurtus įvykius:
     journalctl / usr / bin / bash
  • Peržiūrėkite įvykius pagal prioritetą: journalctl -p (kodas arba terminas), galimos parinktys:
     0 - emerg, 1 - įspėjimas, 2 - kritikas, 3 - klaida, 4 - įspėjimas, 5 - pranešimas, 6 - informacija, 7 - derinimas

Tokiu būdu „Journalctl“ siūlo daugybę praktinių sprendimų šiai užduočiai atlikti.

wave wave wave wave wave