Reklame
Når ting går galt med Linux, kan det være et mareridt at fejlfinde. De iboende udfordringer, der er forbundet med dette, fordobles, når det problem, du står over for, er intermitterende, og du ved ikke, hvad der forårsager det.
Jeg formoder dig kunne tilbringe time efter time gennemlæsning Stabeloverløb, og beder Reddit om hjælp Den Awesome Guide til RedditSpekulerer på, hvordan dine venner altid finder seje ting på Internettet før dig? De bruger sandsynligvis Reddit, den selvudnævnte "forside på Internettet". Læs mere . Eller du kan tage tingene i dine egne hænder og dykke ned i dit systems logfiler med det formål at finde ud af, hvad problemet er.
Hvad er logfiler?
Mange programmer - hvad enten det drejer sig om Windows, Mac eller Linux - genererer logfiler, mens de går. Selv Android genererer dem Sådan får du en Logcat til rapportering af fejl på AndroidHvis du nogensinde er blevet bedt om en logcat, er det sådan, hvordan man gør det! Læs mere . Dette er almindelige tekstfiler, der indeholder oplysninger om, hvordan et program kører. Hver begivenhed er på sin egen linje, tidsstemplet til den anden.
Selvom dette ikke er universelt sandt for alle applikationer, har logfiler typisk en tendens til at findes i / var / log-biblioteket.

Overraskende vil dataene i disse filer være verdslige. Det vil ikke nødvendigvis være tegn på et problem. Det vil bare være opdateringer om, hvad programmet gjorde på et givet tidspunkt.
Men når der er et problem, kan du garantere, at oplysninger om det vil blive indeholdt i logfilerne. Denne information kan bruges til at afhjælpe den eller til at stille et beskrivende spørgsmål til en, der måske kender.
Så når du håndterer logfiler, hvordan isolerer du de oplysninger, du interesserer dig for, fra de ting, du ikke har?
Brug af standard Linux Utilities
Som vi nævnte før, er logfiler ikke eksklusiv til nogen platform. På trods af dette vil fokus på denne artikel være Linux og OS X, fordi disse to operativsystemer leveres med vigtige UNIX-kommandolinjeværktøjer En hurtig guide til at komme i gang med Linux-kommandolinjenDu kan gøre masser af fantastiske ting med kommandoer i Linux, og det er virkelig ikke svært at lære. Læs mere kræves for at parse gennem dem.
Da logfiler er almindelige tekstfiler, kan du bruge ethvert værktøj, du ville bruge til at se sådanne filer. Af disse er grep sandsynligvis den sværeste at lære, men også den mest nyttige. Det giver dig mulighed for at søge efter specifikke sætninger og udtryk inden for en bestemt fil. Syntaks for dette er grep [term] [filnavn].

På det mest avancerede kan du bruge regulære udtryk (RegEx) til at søge efter termer og genstande med laserfokus. Selvom RegEx ofte ligner troldmænd, er det faktisk ret simpelt at få fat på.
Så er der kommandoer 'hoved' og 'hale'. Ingen punkter til at gætte, hvad disse gør. De viser dig henholdsvis de øverste og nederste ti linjer i en fil. Så hvis du ville se de nyeste poster på en logfil, ville du køre "hale filnavn".

Du kan ændre antallet af linjer, der vises ved hjælp af '-n' -trigeren. Så hvis du ville se de første 20 linjer i en fil, ville du køre
head -n 20 [filnavn]

Hvis du vil se på hele indholdet af en fil, kan du bruge værktøjet "kat". Dette kan dog være lidt uhåndterligt, da logfiler ofte kan måle sig i hundreder af tusinder af linjer. En bedre idé ville være at føre det til det mindre værktøj, som giver dig mulighed for at se det en side ad gangen. For at gøre det, kør
cat [filnavn] | mindre

Alternativt kan du bruge sed og awk. Disse to hjælpeprogrammer giver dig mulighed for at skrive enkle scripts, der behandler tekstfiler. Vi skrev om dem sidste år Hver Linux-geek behøver at kende Sed og Awk. Her er hvorfor ...To af de mest kriminelt under-værdsatte Linux-værktøjer er den ganske vist arcane Sed og Awk. Men hvad er de? Hvordan bruges de? Og hvordan gør de det lettere at behandle tekst? Læs mere .
Endelig, hvis du er sikker på det, kan du også prøve vim-teksteditoren De 7 vigtigste grunde til at give Vim-teksteditoren en chanceI årevis har jeg prøvet den ene teksteditor efter den anden. Navn det, jeg prøvede det. Jeg brugte hver eneste af disse redaktører i over to måneder som min primære daglige redaktør. På en eller anden måde ... Læs mere . Dette har en masse indbyggede kommandoer, der gør det trivielt at analysere gennem logfiler. 32-bit version af vim har også en maksimal filstørrelse på 2 GB, selvom jeg ikke vil anbefale dig at bruge den på filer, der er store af ydeevneårsager.
Brug af Log Management Software
Hvis det lyder som for meget hårdt arbejde, eller du synes at bruge noget mere visuelt, kan du overveje at bruge en log management anvendelse (ofte forvekslet med SIEM, eller sikkerhedsinformation og begivenhedsstyring).
Det store ved disse er, at de gør meget af det hårde arbejde for dig. Mange af dem kan se på logfiler og identificere problemer automatisk. De kan også visualisere logfiler i alle mulige behagelige grafer og diagrammer, så du kan få en bedre forståelse af, hvor pålideligt en applikation fungerer.
Et af de mest kendte loghåndteringsprogrammer kaldes splunk. Dette logstyringsværktøj giver dig mulighed for at gennemse filer ved hjælp af en webgrænseflade. Det har endda sit eget kraftfulde og alsidige søgebehandlingssprog, som giver dig mulighed for at uddybe resultaterne på en programmatisk måde.
Splunk bruges af utallige store virksomheder. Det er tilgængeligt for Mac, Windows og Linux. Men det har også en gratis version, som kan bruges af hjemmebrugere og små virksomheder til at administrere deres logfiler.
Denne version - kaldet Splunk lys - deler meget til fælles med virksomhedsversionerne. Det kan gennemse logfiler, overvåge filer for problemer og udsende advarsler, når noget er galt.
Når det er sagt, har Splunk Light nogle begrænsninger, som er ret rimelige. For det første er mængden af data, den kan forbruge, begrænset til 500 MB om dagen. Hvis det ikke er nok, kan du opgradere til den betalte version af Splunk Light, som kan forbruge 20 GB logfiler pr. Dag. Realistisk set får de fleste brugere ikke overalt i nærheden af det.
Det understøtter også kun fem brugere, hvilket ikke burde være et problem for de fleste mennesker, især hvis det kun køres på husholdningsweb- og filservere.
Splunk tilbyder en cloud-version, som er ideel til dem, der ikke ønsker at installere hele klienten på deres maskiner, eller dem med et antal fjernservere. Ulempen med dette er de enorme omkostninger, der er involveret. Den billigste Splunk-plan koster $ 125,00 pr. Måned. #
Det er en masse kontanter.
Hvordan håndterer du dine logfiler?
Så vi har set på måder, du kan forhøre dine logfiler på og finde de oplysninger, du har brug for til fejlfinding, enten personligt eller med fjernhjælp. Men kender du til nogen bedre metoder? Bruger du en logadministrationssoftware eller standard Linux-hjælpeprogrammer?
Jeg vil gerne høre om det. Fortæl mig det i kommentarerne herunder.
Matthew Hughes er en softwareudvikler og forfatter fra Liverpool, England. Han findes sjældent uden en kop stærk sort kaffe i hånden og forguder absolut sin Macbook Pro og hans kamera. Du kan læse hans blog på http://www.matthewhughes.co.uk og følg ham på twitter på @matthewhughes.