Hvis du er en systemadministrator, vil du sikkert vite viktigheten av loggfiler, så vel som smerten man går gjennom mens du analyserer dem, spesielt når du har en opptatt server. Heldigvis finnes det visse verktøy som gjør livet enkelt for deg, og en av dem er Logwatch, et kommandolinjeverktøy for logganalyse og rapportering i Linux.

I denne artikkelen vil vi diskutere grunnleggende om dette verktøyet, sammen med funksjonene det gir.

Merk : Alle eksemplene som er omtalt i denne artikkelen, er testet på Ubuntu 14.04 og GNU bash, versjon 4.3.11 (1). Logwatch er tilgjengelig for de fleste Linux distro skjønt.

Installasjon

Logwatch-kommandoen finnes i depotet til de fleste Linux distro og kan installeres ved hjelp av følgende kommando.

Ubuntu eller Debian-basert distro:

 sudo apt-get installer logwatch 

eller

 sudo yum installer logwatch 

for Centos, Fedora eller Redhat-baserte distro.

Du kan også installere den fra kilden fra den offisielle prosjektsiden.

Logwatch

Logwatch er i utgangspunktet rettet mot å hjelpe med systemloggbehandling. Det har evnen til å gå gjennom loggene dine i en gitt tidsperiode og lage en rapport på de områdene du ønsker med detaljene du ønsker. Her er noen av eksemplene som forklarer bruken av dette:

Få informasjon om alt

Som standard analyserer loggverktøyet og rapporter loggene relatert til et bredt spekter av tjenester. For eksempel, her er resultatet når kommandoen ble kjørt uten noen alternativer:

Som du ser, er utdatainformasjonen stor og er ikke praktisk nok til å bli vist på terminalskjermbildet. Så det er best du omdirigerer det til en tekstfil for enkel visning.

Skjermbildet ovenfor skal gi deg en ide om hva slags rapport Logwatch oppretter. Overskriften til stede øverst gir deg et abstrakt av kommandos standardkonfigurasjon. For eksempel inneholder "Behandlingsinitiert felt" informasjon om dato og klokkeslett når kommandoen ble utført. Feltet "Datoområde behandlet" inneholder informasjon om tidsperioden for loggene som ble analysert. Feltet "Detaljnivå av utgang" inneholder informasjon på detaljnivået i rapporten, og de to siste feltene inneholder informasjon om utdataformat og lokal vert.

Etter all denne informasjonen begynner den faktiske rapporten, der loggene er segregert på grunnlag av tjenester. For eksempel er den første tjenesten her dpkg-status, etterfulgt av Kernel, pam_unix, Connections, sudo og mer.

Begrens produksjonen til en bestemt tjeneste

Hvis du vil, kan du begrense kommandoenes utgang til en bestemt tjeneste. Dette kan oppnås ved å bruke alternativet - service. Her er et eksempel:

Så du kan se at kommandoen bare produserte en rapport som er spesifikk for tjenesten pam_unix.

Spesifiser detaljnivået

Kommandoen lar deg også spesifisere detaljnivået i rapporten ved hjelp av alternativet --detail . Argumentet for dette alternativet kan være høyt, med eller lavt, som tilsvarer heltalene 10, 5 og 0, henholdsvis.

Som det fremgår av det første eksemplet som er omtalt i denne artikkelen, er standarddetaljnivået 0. Her er standardutgangen av kommandoen for kjernenstjenesten:

og her er resultatet når detaljnivået eksplisitt var satt til 10 eller høyt:

Så du kan se, da detaljnivået ble økt fra 0 til 10, økte også informasjonen som ble produsert av kommandoen.

Angi datoperiode

Du kan også angi et datoperiode for å behandle, noe som betyr at du kan gi kommandoen et tidsintervall for å behandle loggoppføringer. Dette kan oppnås ved å bruke alternativet - --range . Vanlige områder er i går, i dag og alle. Her er et eksempel:

Send rapporten til en e-postadresse

Logwatch kan også sende rapporten til en bestemt e-postadresse. Dette kan oppnås ved å bruke --mailto alternativet. Her er et eksempel:

 logwatch - service pam_unix - rekkefølge alt - spesifikt høyt - mail til [email protected] 

Kommandoen ovenfor sendte rapporten til en e-postkonto. Du bør sikkert sjekke mappen Spam for e-posten, da Gmail har merket det som Spam for e-postkontoen min.

For mer informasjon om Logwatch, gå gjennom kommandos man side.

Konklusjon

Hvis du leter etter et kommandolinjeverktøy som kan skanne systemloggfiler og presentere informasjonen i en lesbar form, kan du prøve Logwatch. Det kan lett betraktes som et av de mest nyttige kommandolinjeverktøyene for loggparsing og filtrering av generell bruk.