Nginx og Apache logger overvåking med GoAccess

Overvåk og analyser webserverlogger med åpen kildekode logg analysator i sanntid – GoAccess


Feilsøking på nettet er morsomt og kan være frustrerende hvis du ikke er utstyrt med riktige verktøy.

Hvis du støtter nettsted for tung trafikk, må du ofte analysere og overvåke webserverlogger for ytelse & kapasitetsplanlegging. Dette er viktig for nettingeniør.

Det er ok å sjekke mindre loggstørrelse manuelt, men hvis du har den store filen, ville det ikke være morsomt å gå gjennom millioner av linjer for å finne beregningene.

Derfor trenger du verktøy for å forenkle administratorjobben og gjøre den mer produktiv.

GoAccess er en lett open source loganalysator som støtter flere loggformater og kan brukes med ett av følgende.

  • Nginx
  • Apache HTTP
  • AWS ELB, S3, CloudFront
  • Google skylagring

Hvilke beregninger kan du analysere med GoAccess?

Nesten alt du tar i loggene. For å gi deg en idé:

  • Det tar tid å betjene forespørselen
  • Besøks-IP, DNS, vert
  • Besøkers nettleser & Operativsystemdetaljer
  • 404 ikke funnet detaljer
  • Topp forespørsler / besøkende
  • båndbredde
  • Statiske filer
  • Geo Location
  • Statuskode
  • og mer..

Ser du etter disse beregningene som skal overvåkes av nettstedet ditt?

Flink!

På hvilket OS du kan installere?

GoAccess fikk bare en avhengighet – sykepleiere. Hvis du kan installere, kan du bruke det alle operativsystemer.

Den er tilgjengelig i distribusjonspakke for:

  • Ubuntu
  • Debian
  • Fedora
  • CentOS
  • FreeBSD / OpenBSD
  • Slackware
  • Arch Linux
  • Gentoo
  • Mac os
  • Windows gjennom Cygwin

Du kan imidlertid også bygge fra kilden eller bruke med Docker.

Hvis du er ny på Docker, vil jeg anbefale å ta dette Docker mestringskurs.

Installerer GoAccess på Ubuntu

  • Logg deg på Ubuntu-serveren med root-privilegiet
  • Bruk apt-get for å installere som nedenfor

apt-get install goaccess

Lett.

Installere på CentOS

Logg på serveren og utfør yumcommand

yum installer goaccess

Installere ved å bruke Source på CentOS / Ubuntu

Elsker å samle fra kilden?

Her er trinnene.

  • Installer følgende avhengigheter hvis du bruker CentOS

yum install gcc ncurses-devel glib2-devel geoip-devel tokyocabinet-devel

  • Hvis du bruker Ubuntu

apt-get install libncursesw5-dev libgeoip-dev make

  • Last ned den nyeste pakken ved hjelp av wget

wget http://tar.goaccess.io/goaccess-1.2.tar.gz

  • Pakk den nedlastede filen

gunzip –c goaccess-1.2.tar.gz | tjære xvf –

  • Gå til nyopprettet mappe, som du fikk etter utdrag

cd goaccess-1.2

  • Opprett med kommandoen nedenfor

./ configure –enable-geoip = legacy –enable-utf8
gjøre
gjøre installere

Bra gjort, du har installert GoAccess og er klar til å analysere loggene.

Kontroller installasjonen

Når det er installert, bare kjør goaccess på ledeteksten, og det skal skrive ut bruken som nedenfor.

[[Email protected] goaccess-1.2] # goaccess
GoAccess – 1.2
Bruk: goaccess [filnavn] [alternativer …] [-c] [- M] [- H] [- q] [- d] […]
Følgende alternativer kan også leveres til kommandoen:
Logg & Alternativer for datoformat
  –date-format = – Spesifiser loggdatoformat. for eksempel% d /% b /% Y
  –log-format = – Spesifiser loggformat. Indre sitater må være
                                    slapp unna, eller bruk enkeltnoteringer.
  –time-format = – Spesifiser loggtidsformat. for eksempel% H:% M:% S
Alternativer for brukergrensesnitt
  -c –konfig-dialog – Spør logg / dato / tid konfigurasjonsvindu.
  -i –hl-header – Fargemerk aktivt panel.
  -m –med-mus – Aktiver musestøtte på dashbordet.
  –color = – Spesifiser tilpassede farger. Se manpage for mer
                                    detaljer og alternativer.
  –farge-ordningen =<1 | 2 | 3>          – Ordninger: 1 => Grått, 2 => Grønn, 3 => Monokai.
  –html-custom-css = – Spesifiser en tilpasset CSS-fil i HTML-rapporten.
  –html-custom-js = – Spesifiser en tilpasset JS-fil i HTML-rapporten.
  –html-prefs = – Angi standardinnstillinger for HTML-rapport.
  –html-report-title = – Angi tittel og overskrift for HTML-rapportside.
  –json-pretty-print – Formater JSON-utgang m / faner & linjeskift.
  –max-items – Maksimalt antall elementer som skal vises per panel.
                                    Se mansiden for grenser.
  –no-colour – Deaktiver farget output.
  –no-column-names – Ikke skriv kolonnenavn i terminutgang.
  –no-csv-sammendrag – Deaktiver sammendragsberegninger for CSV-utgangen.
  –no-progress – Deaktiver fremdriftsberegninger.
  –no-tab-scroll – Deaktiver bla gjennom panelene på TAB.
  –no-html-sist-oppdatert – Skjul HTML sist oppdatert felt.
Serveralternativer
  –addr = – Spesifiser IP-adresse som serveren skal bindes til.
  –daemonize – Kjør som daemon (hvis – real-time-html er aktivert).
  –fifo-in = – Sti for å lese navngitt pipe (FIFO).
  –fifo-out = – Sti for å skrive navngitt pipe (FIFO).
  –opprinnelse = – Forsikre deg om at klienter sender den spesifiserte opprinnelsesoverskriften
                                    på WebSocket-håndtrykk.
  –port = – Angi porten du vil bruke.
  –real-time-html – Aktiver HTML-output i sanntid.
  –ssl-cert = – Bane til TLS / SSL-sertifikat.
  –ssl-key = – Bane til TLS / SSL privat nøkkel.
  –ws-url = – URL som WebSocket-serveren svarer på.
Filalternativer
  –                               – Loggfilen som skal analyseres blir lest fra stdin.
  -f –log-file = – Sti til innmatingsloggfil.
  -l –debug-file = – Send alle feilsøkingsmeldinger til den spesifiserte
                                    fil.
  -p –config-file = – Egendefinert konfigurasjonsfil.
  –invalid-forespørsler = – Logg ugyldige forespørsler til den angitte filen.
  –no-global-config – Ikke last inn global konfigurasjonsfil.
Analyser alternativer
  -a –agent-list – Aktiver en liste over brukeragenter etter vert.
  -d –med-output-resolver – Aktiver IP-resolver på HTML | JSON-utgang.
  -e –exclude-ip = – Ekskluder en eller flere IPv4 / 6. Tillater IP
                                    spenner f.eks. 192.168.0.1-192.168.0.10
  -H –http-protocol = – Angi / fjern innstillingsprotokoll for HTTP hvis funnet.
  -M –http-method = – Sett / unser HTTP-forespørselsmetoden hvis den er funnet.
  -o –output = fil.html | json | csv – Output enten HTML-, JSON- eller CSV-fil.
  -q –no-query-string – Ignorer forespørselens streng. Fjerne
                                    spørringstreng kan redusere minnet betydelig
                                    forbruk.
  -r –no-term-resolver – Deaktiver IP-resolver på terminalutgang.
  –444-as-404 – Behandle ikke-standard statuskode 444 som 404.
  –4xx-to-unique-count – Legg til 4xx-klientfeil til de unike besøkende
                                    telle.
  –all-static-files – Inkluder statiske filer med en spørringsstreng.
  –bare crawlers – Analyser og vis bare crawlers.
  –date-spec = – Dato spesifisitet. Mulige verdier: `dato`
                                    (standard), eller `hr`.
  –dobbeltavkode – Avkode dobbeltkodede verdier.
  –enable-panel = – Aktiver parsing / visning av det gitte panelet.
  –hour-spec = – Timespesifisitet. Mulige verdier: `hr`
                                    (standard), eller `min` (tiendedel av min).
  –ignorere-gjennomsøkere – ignorere gjennomsøkere.
  –ignor-panel = – Ignorer analysering / visning av det gitte panelet.
  –ignor-referer = – Ignorer en referer fra å bli talt. Jokertegn
                                    er tillatt. dvs. * .bing.com
  –ignor-status = – Ignorer analysering av gitt statuskode.
  –num-tests = – Antall linjer som skal testes. >= 0 (10 standard)
  –prosess-og-exit – Analyser logg og avslutt uten å sende ut data.
  –real-os – Vis virkelige OS-navn. f.eks. Windows XP, Snow
                                    Leopard.
  –sort-panel = PANEL, METRIC, ORDER – Sorter panel på startbelastning. For eksempel:
                                    –sort-panel = BESØKENDE, BY_HITS, ASC. Se
                                    manpage for en liste over paneler / felt.
  –static-file = – Legg til statisk filtype. f.eks .: mp3.
                                    Utvidelser er store og små bokstaver.
GeoIP-alternativer
  -g –std-geoip – Standard GeoIP-database for mindre minne
                                  forbruk.
  –geoip-database = – Spesifiser sti til GeoIP-databasefil. dvs.,
                                    GeoLiteCity.dat, GeoIPv6.dat …
Andre muligheter
  -h – hjelp – Denne hjelpen.
  -V – versjon – Vis versjonsinformasjon og avslutt.
  -s – lagring – Vis gjeldende lagringsmetode. f.eks+
                                    Tre, Hash.
  –dcf – Vis banen til standardkonfigurasjonen
                                    fil når `-p` ikke brukes.
Eksempler kan bli funnet ved å kjøre `man goaccess`.
For mer informasjon, besøk: http://goaccess.io
GoAccess Copyright (C) 2009-2016 av Gerardo Orellana
[[Email protected] goaccess-1.2] #

Analyse av Nginx & Apache med GoAccess

En av de raskeste måtene å analysere access.log er ved å bruke-fparameter.

ex:

goaccess -f access.log

Over instruerer jeg å åpne filen access.log. Dette vil vise deg det totale dashbordet og de følgende 15 seksjonene.

  • Unike besøkende per dag
  • Forespurte filer
  • Statiske forespørsler (skrifter, bilde, pdf osv.)
  • Fant ikke (404) forespørsler
  • Besøkendes IP / vertsdetaljer
  • Besøkendes OS
  • Nettleserdetaljer
  • Tidsfordeling
  • referent
  • HTTP-statuskode
  • Geografisk beliggenhet

Hvis den valgte filen blir oppdatert i sanntid, vil du merke at beregninger blir oppdatert på terminalen. Her kan du gå gjennom beregningene du trenger for å analysere.

Sanntidsovervåking via HTTP (s)

GoAccess lar deg omdirigere utdata til HTML-fil som du kan bruke som en sanntidsovervåking. Dette er nyttig når du ikke vil logge deg på serveren hver gang du trenger å bekrefte noen beregninger.

goaccess /var/log/nginx/access.log -o /var/www/geekflare.com/htdocs/real-time.html –log-format = KOMBINERT – real-time-html

Over omdirigerer jeg output til real-time.html-fil som er tilgjengelig under htdocs. Siden det er htdocs, kan jeg få tilgang til denne filen fra https://geekflare.com/real-time.html når jeg trenger å se beregningene.

Et vakkert instrumentpanel!

Imidlertid vil jeg ikke anbefale å gjøre det på denne måten i produksjonen. Jeg er sikker på at du ikke vil at noen skal lese webserverloggene dine, og det kan være lurt å bruke følgende begrensning.

  • Beskytt filen med bruker og passord
  • Tillat tilgang bare fra IP-en
  • Bruk annen URL med tilpasset port og legg den bak en brannmur slik at bare tillatte IP / brukere kan få tilgang

GoAccess ser ut som en kraftig open source-logg-analysator. Det er lett og GRATIS, så prøv deg frem.

Du kan også være interessert i å sjekke skybasert logganalysator.

TAGS:

  • Overvåkning

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map