Linux Logging Grunnleggende

Operating system-logger gir et vell av diagnostisk informasjon om din datamaskin, og Linux er ikke noe unntak. Alt fra kjernen hendelser til brukeren handlinger blir logget av Linux, slik at du kan se nesten alle handlinger utført på serverne. I dette avsnittet vil vi forklare hva Linux logger, hvor du kan finne dem, og hvordan du kan tolke dem.

Linux-Systemet Logger

Linux har en spesiell mappe for lagring av logger kalt /var/log., Denne katalogen inneholder logger fra OS selv, tjenester, og ulike programmer som kjører på systemet. Her er hva denne katalogen ser ut som på et vanlig Ubuntu-systemet.

Noen av de viktigste Linux-system-logger inkluderer:

  • /var/log/syslog og /var/log/messages lagre alle globale systemet aktivitet data, inkludert oppstart meldinger. Debian-baserte systemer som Ubuntu lagre denne i /var/log/syslog, mens Red Hat-baserte systemer som RHEL eller CentOS bruk /var/log/messages.,
  • /var/log/auth.log og /var/log/secure lagre alle sikkerhetsrelaterte hendelser som logins, root brukeren handlinger, og ut fra pluggbare godkjenning moduler (PAM). Ubuntu og Debian bruk /var/log/auth.log, mens Red Hat og CentOS bruk /var/log/secure.
  • /var/log/kern.log lagrer kernel hendelser, feil og advarsler-logger, som er spesielt nyttig for feilsøking tilpasset kjerner.
  • /var/log/cron lagrer informasjon om planlagte oppgaver (cron-jobber)., Bruk denne informasjonen for å bekrefte at din cron jobber kjører vellykket.

Noen programmer har også skrive logg filer i denne katalogen. For eksempel Apache web-server skriver logger /var/log/apache2 directory (Debian), mens MySQL skriver logger /var/log/mysql – katalogen. Noen programmer også logge via syslog, som vi vil forklare i den neste delen.
syslog

Hva er Syslog?

Syslog er en standard for å opprette og sende loggene. Ordet «syslog» kan referere til noe av det følgende.,

  1. syslog-service, som mottar og behandler syslog-meldinger. Det hører for hendelser ved å opprette en kontakt som ligger på /dev/log, hvilke programmer som kan skrive til. Det kan skrive meldinger til en lokal fil eller videresende meldinger til en ekstern server. Det er forskjellige syslog-implementeringer inkludert rsyslogd og syslog-ng.
  2. syslog-protokollen (RFC 5424), som er en transportprotokoll som angir hvordan å overføre logger over et nettverk. Det er også et dataformat som definerer hvordan meldinger er strukturert., Som standard bruker port 514 for ren tekst meldinger og port 6514 for krypterte meldinger.
  3. En syslog-melding, som er en logg som er formatert i syslog meldingsformat. En syslog meldingen består av et standardisert header og en melding som inneholder loggen innholdet.

Siden kan videresende syslog meldinger til eksterne servere, det er ofte brukt til å videresende system-logger for å logge management løsninger, for eksempel SolarWinds® Loggly® og SolarWinds Papertrail™.

Syslog-Format og Felt

Syslog-meldinger inneholder en standardisert header med flere felt., Disse inkluderer tidsstempel, navnet på programmet som genererte arrangementet, plassering i systemet der meldingen stammer, og dens prioritet. Du kan endre dette formatet i syslog gjennomføring er konfigurasjonsfilen, men ved hjelp av standard-formatet som gjør det lettere å analysere, analysere, og ruten syslog hendelser.

Her er et eksempel logge deg melding ved hjelp av standard format. Det er fra sshd daemon, som kontrollerer eksterne pålogginger til systemet., Denne meldingen beskriver en mislykkede påloggingsforsøk:

Jun 4 22:14:15 server1 sshd : Failed password for root from 10.0.2.2 port 22 ssh2
<%pri%>%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msgid% %msg%n

Dette genererer følgende logg:

Nedenfor finner du beskrivelser av noen av de mest brukte syslog felt når du søker eller feilsøking av problemer.

Tidsstempel

tidsstempelet feltet viser tid og dato for når meldingen ble generert på systemet for å sende meldingen. Eksemplet tidsstempel bryter ned som dette:

  • «2019-06-05″er år, måned og dag.
  • «T»er en nødvendig del av tidsstempel feltet, og skiller dato og klokkeslett.,
  • «22:14:15.003″er det 24-timers format av tiden, inkludert antall millisekunder (003).
  • «Z»indikerer UTC-tid. I stedet for z, eksempel kunne ha inkludert en offset, for eksempel -08:00, noe som indikerer at tid er forskjøvet fra UTC av åtte timer.

Hostname

hostname-feltet («server1» i eksempelet ovenfor) angir navnet på verten eller systemet som opprinnelig sendt meldingen.

App-Navn

app-navn-feltet («sshd:auth» i eksemplet) angir navnet på programmet som sendte meldingen.,

Hovedside

prioritet-feltet eller pri for kort («<34>» i eksempelet ovenfor) forteller deg hvor presserende eller alvorlig hendelsen er. Det er en kombinasjon av to numeriske felt: anlegget og alvorlighetsgrad. Anlegget angir type prosess som opprettet arrangementet, alt fra 0 til kjernen meldinger til 23 for lokale programmer. Alvorlighetsgraden varierer fra 0-7, med 0 som indikerer en nødsituasjon og 7 indikerer en debug-event.

Pri kan overføres på to måter., Den første er som et enkelt tall, prival, som er beregnet som anlegget feltet verdi multiplisert med åtte, så resultatet er lagt til alvorlighetsgraden feltet verdi: (anlegg)(8) + (alvorlighetsgrad). Den andre er pri-tekst som skal ut i den string format «anlegget.alvorlighetsgrad”. Sistnevnte format kan ofte være lettere å lese og søke, men tar opp mer plass.

Logging med Systemd

Mange Linux-distribusjoner skip med systemd, som er en prosess og service manager. Systemd implementerer sin egen logging tjeneste kalt journald som kan erstatte eller supplere syslog., Journald logger seg på en vesentlig annerledes måte enn systemd, som er grunnen til at det har sin egen del i den Ultimate Guide til å Logge. Du kan lære mer om hvordan du logger via systemd i Systemd Logging delen.

Share

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *