Slik lager du bedre loggfiler på Linux og Mac

Når Linux går galt, kan det være et mareritt å feilsøke. Ikke kast bort tiden på Reddit - ta ting i egne hender, og dykk inn i systemets loggfiler for å løse problemet!

Når Linux går galt, kan det være et mareritt å feilsøke.  Ikke kast bort tiden på Reddit - ta ting i egne hender, og dykk inn i systemets loggfiler for å løse problemet!
Annonse

Når ting går galt med Linux, kan det være et mareritt å feilsøke. De iboende utfordringene som er forbundet med dette, blir doblet når problemet du står overfor er intermittent, og du vet ikke hva som forårsaker det.

Jeg antar at du kan tilbringe hver time etter å ha lest Stack Overflow, og spør Reddit for hjelp. Den fantastiske guiden til Reddit. Den fantastiske guiden til Reddit. Lurer på hvordan vennene dine alltid finner kule ting på Internett før du? De bruker sannsynligvis Reddit, den selvproklamerte "forsiden av Internett". Les mer . Eller du kan ta ting i egne hender, og dykke inn i systemets loggfiler, med sikte på å finne ut hva problemet er.

Hva er loggfiler?

Mange programmer - det være seg for Windows, Mac eller Linux - genererer loggfiler når de går. Selv Android genererer dem Slik får du en Logcat for å rapportere feil på Android Slik får du en Logcat for rapportering av feil på Android Hvis du noen gang har blitt bedt om en logcat, så gjør du det! Les mer . Dette er enkle tekstfiler som inneholder informasjon om hvordan et program kjører. Hver hendelse vil være på egen linje, tidsstemplet til den andre.

Selv om dette ikke er helt sant for alle applikasjoner, er det vanligvis loggfiler som finnes i / var / logg katalogen.

varlog

Overveldende vil dataene i disse filene være verdslige. Det vil ikke nødvendigvis være et tegn på et problem. Det vil bare være oppdateringer om hva programmet gjorde på et gitt tidspunkt.

Men når det er et problem, kan du garantere at informasjon om det vil bli inkludert i loggfilene. Denne informasjonen kan brukes til å avhjelpe det, eller å stille et beskrivende spørsmål om noen som kanskje vet.

Så, når du håndterer loggfiler, hvordan isolerer du informasjonen du bryr deg om fra de ting du ikke gjør?

Bruke Standard Linux Utilities

Som vi nevnte før, er loggfilene ikke eksklusive til en hvilken som helst plattform. Til tross for dette vil fokuset i denne artikkelen være Linux og OS X, fordi disse to operativsystemene leveres med de viktige UNIX-kommandolinjeverktøyene. En rask guide for å komme i gang med Linux-kommandolinjen En rask guide for å komme i gang med Linux Kommandolinje Du kan gjøre mange fantastiske ting med kommandoer i Linux, og det er egentlig ikke vanskelig å lære. Les mer som kreves for å analysere dem.

Siden loggfiler er enkle tekstfiler, kan du bruke verktøy som du vil bruke til å se slike filer. Av disse er grep trolig den vanskeligste å lære, men også den mest nyttige. Den lar deg søke etter bestemte setninger og vilkår innenfor en bestemt fil. Syntaxen for dette er grep [term] [filnavn] .

greperrorlog

På deres mest avanserte, kan du bruke vanlige uttrykk (RegEx) for å søke etter termer og elementer med laserfokus. Selv om RegEx ofte ser ut som trollkarl, er det faktisk ganske enkelt å få tak i.

Deretter er det kommandoene "hode" og "hale". Ingen poeng for å gjette hva disse gjør. De viser deg henholdsvis de øverste og nederste ti linjene i en fil. Så, hvis du ønsket å se de siste elementene i en loggfil, ville du kjøre «hale filnavn».

taillog

Du kan endre antall linjer som vises ved å bruke '-n' utløseren. Så, hvis du ønsket å se de første 20 linjene i en fil, ville du kjøre

head -n 20 [filnavn]

headlog

Hvis du vil se på hele innholdet i en fil, kan du bruke "katt" -verktøyet. Dette kan imidlertid være litt uhåndterlig, siden loggfiler ofte kan måle i hundretusenvis av linjer . En bedre ide ville være å rør det til mindre verktøy, som vil la deg se det en side av gangen. For å gjøre det, kjør

katt [filnavn] | mindre

catlogless

Alternativt kan du bruke sed og awk. Disse to verktøyene lar deg skrive enkle skript som behandler tekstfiler. Vi skrev om dem i fjor. Hver Linux Geek trenger å vite Sed og Awk. Her er hvorfor ... Hver Linux Geek trenger å vite Sed og Awk. Her er hvorfor ... To av de mest kriminelt undervurderte Linux-verktøyene er admittedly arcane Sed og Awk. Men hva er de? Hvordan brukes de? Og hvordan gjør de det enklere å behandle tekst? Les mer .

Endelig, hvis du er sikker på det, kan du også prøve å bruke vim-tekstredigeringen. Topp 7 grunner til å gi Vim Text Editor en sjanse Topp 7 grunner til å gi Vim Text Editor en sjanse I mange år har jeg prøvde en tekstredigerer etter en annen. Du nevner det, jeg prøvde det. Jeg brukte hver og en av disse redaktørene i over to måneder som min primære daglige redaktør. På en eller annen måte, jeg ... Les mer. Dette har en haug med innebygde kommandoer som gjør det trivielt å analysere gjennom loggfiler. 32-bitersversjonen av vim har også en maksimal filstørrelse på 2 GB, selv om jeg ikke vil anbefale at du bruker den på filer som er store for ytelsesårsaker.

Bruke Log Management Software

Hvis det høres ut som for mye hardt arbeid, eller du har lyst til å bruke noe mer visuelt, kan du vurdere å bruke et loggbehandlingprogram (ofte forvekslet med SIEM, eller Sikkerhetsinformasjon og hendelsesstyring).

Det som er bra med disse er at de gjør mye av det harde arbeidet for deg. Mange av dem kan se på logger og identifisere problemer automatisk. De kan også visualisere logger i alle slags behagelige grafer og diagrammer, slik at du får en bedre forståelse av hvor pålitelig et program utfører.

En av de mest kjente loggstyringsprogrammene heter Splunk. Dette loggbehandlingsverktøyet lar deg krysse filer ved hjelp av et webgrensesnitt. Den har til og med sitt eget kraftige og allsidige søkeprosesspråk, som lar deg bore ned resultatene på en programmatisk måte.

Splunk brukes av utallige store bedrifter. Den er tilgjengelig for Mac, Windows og Linux. Men det har også en gratis versjon, som kan brukes av hjemmet og småbedriftsbrukere til å administrere loggene sine.

Denne versjonen - kalt Splunk Light - deler mye til felles med bedriftens versjoner. Det kan bla gjennom logger, overvåke filer for problemer, og gi varsler når noe er feil.

Når det er sagt, har Splunk Light noen begrensninger, som er ganske rimelige. For det første, mengden data det kan konsumere er begrenset til 500 MB per dag. Hvis det ikke er nok, kan du oppgradere til den betalte versjonen av Splunk Light, som kan forbruke 20 GB logger per dag. Realistisk skjønt, vil de fleste brukere ikke komme hvor som helst i nærheten av det.

Den støtter også bare fem brukere, som ikke bør være et problem for de fleste, spesielt hvis det bare kjøres på husholdnings web- og filservere.

Splunk tilbyr en sky versjon, som er ideell for de som ikke ønsker å installere hele klienten på sine maskiner, eller de med en rekke eksterne servere. Ulempen med dette er den enorme prisen som er involvert. Den billigste Splunk-planen koster $ 125, 00 per måned. #

Det er mye penger.

Hvordan håndterer du loggfilene dine?

Så vi har sett på måter du kan forhøre loggfilene dine, og finne informasjonen du trenger for å feilsøke, enten personlig eller med ekstern hjelp. Men vet du om noen bedre metoder? Bruker du en loggadministrasjonsprogramvare eller standard Linux-verktøy?

Jeg vil høre om det. Gi meg beskjed i kommentarene nedenfor.

In this article