Kuten minkä tahansa kehittäjä tai järjestelmän ylläpitäjä kertoo, log-tiedostot ovat erittäin hyödyllinen työkalu virheenjäljitykseen ongelmia sisällä web-sovellus. Itse asiassa lokitiedostoja käytetään yleensä ensisijaisena tietolähteenä, kun verkkosivuilla on toimintahäiriö.
yksi tietty lokitiedosto, jota voidaan käyttää virheenkorjaussovelluksissa (tai yksinkertaisesti saada tietoa vierailijoiden toiminnasta), on Apache HTTP-palvelimen tuottama käyttöoikeusloki., Alla aion päästä tiedot nämä lokit: selitän, mitä saa kirjata Apache lokit, missä ne voidaan löytää, ja miten järkeä sisältämien tietojen tiedoston. Koska todellista valtaa lokitiedot tulee hahmottamisessa tarkoitettuja tietoja analysoimalla, pyrin myös keskustella hyödyt kanssa kirjaudu hallinnan ja analytiikan alustan (kuten Sumo Logiikka) saavat arvokkaita oivalluksia pääsy loki tiedot.
mitä ovat Apache Access-lokit?,
kuten edellä mainittiin, Apache access-loki on yksi useista Apache HTTP-palvelimen tuottamista lokitiedostoista. Tämä lokitiedosto vastaa kaikkien Apache-palvelimen käsittelemien pyyntöjen tietojen tallentamisesta. Joten jos henkilö vierailee verkkosivun sivustossasi, access lokitiedosto sisältää yksityiskohtia tästä tapahtumasta., tieto on arvokasta eri tilanteissa: esimerkiksi, jos yleinen pyyntö ei onnistu kunkin yksittäisen yrittää saada erityisesti web sivu, linkki voi osoittaa sivulle, jota ei ole enää olemassa; jos tietyn sivun päällä on kestää kauemmin kuin sen pitäisi ladata, kirjaudu merkinnät voidaan osoittaa, SQL-kyselyitä, jotka voidaan refactored parantaa suorituskykyä; jos yksi tietty sivu, sivusto on hyvin suosittu, yhdistämällä tietoja access lokit voisi loistaa valo yleisesti pyydetyt resurssit, siten yritykset voivat lisätä niiden suosiota tarjoamalla lisää liittyvää sisältöä.,
Mistä löydän Apache Access-lokit?
Apache access-lokien sijainti riippuu järjestelmästä, jolla Apache HTTP-palvelin toimii. Suurin osa Apache HTTP – palvelimen instansseista toimii Linux-jakeluilla. Joten, tässä artikkelissa, pysymme yksityiskohtaisesti, missä Apache access lokit löytyy Linux-kone.
Ubuntu Linux-jakelun, esimerkiksi, käyttää lokitietueet kirjoitetaan oletuksena seuraavasta sijainnista:
/var/log/apache2/access.,loki
oletusarvo voi vaihdella hieman muissa Linux-jakeluissa, mutta useimmissa tapauksissa sinun ei tarvitse katsoa kovin pitkälle. Lopulta, sijainti ja muoto (lisää tästä myöhemmin) access lokit ovat määritelty CustomLog direktiivin, jolla voidaan katsella ja muokata sisällä Apache HTTP server configuration.
Tulkkaus Apache Lokit
Nyt kun tiedät mitä Apache lokit ovat ja mistä ne löytyvät, emme voi selittää, miten tulkita merkinnät niin, että kehitystiimi ja muut IT-henkilöstö voi hyödyntää niitä.,
Lukeminen Apache Lokit
tolkkua Apache lokit edellyttää, että analyytikko ymmärtää muoto, jossa yhteys lokit tallennetaan. Kuten edellä mainittiin, käyttöoikeuslokien muoto on määritelty Tullilokidirektiivissä ja sijainti. Otamme tarkastella kahta suosittua log formaatteja, joita käytetään usein Apache access lokit alla.
yleinen Lokiformaatti
yhteinen Lokiformaatti on standardoitu tekstitiedostomuoto, jota eri web-palvelimet käyttävät palvelimen lokitiedostojen tuottamisessa., Apache HTTP-palvelimella yhteistä Lokiformaattia voidaan käyttää sellaisten käyttöoikeuslokien tuottamiseen, jotka ovat niin yksinkertaisia, että kehittäjät ja ylläpitäjät voivat lukea. Lisäksi, koska se on standardoitu muoto käytössä useita web-palvelimia, CLF-alustettu lokitiedostoja voidaan helposti käyttää monissa lokianalyysin alustoilla.
pääsy kirjaa kirjoitettu Yhteinen Loki Muodossa näyttää tältä:
127.0.0.1 – Scott ”GET /server-status HTTP/1.1” 200 2326
– kentät edellä näyte ennätys edustavat seuraavia:
- 127.0.0.,Pyynnön esittäneen asiakkaan 1-IP-osoite;
- lokitiedoston toisen kentän määrittelevä yhdysviiva on asiakkaan henkilöllisyys. Tämä kenttä on usein palasi kuin yhdysmerkki ja Apache HTTP-palvelimen dokumentaatio suosittelee, että erityisesti tällä alalla, ei voida vedota paitsi jos valvottavan sisäinen verkko.
- Scott – käyttäjätunnus pyytävän henkilön resurssi;
- – päivämäärä ja aika pyynnön;
- ”GET /server-status HTTP/1.,1” – pyynnön tyyppi ja resurssien pyydetään;
- 200 – HTTP-vastauksen tilakoodi;
- 2326 – size esine palautetaan asiakkaalle.
yhdistetty Lokiformaatti
toinen Apache access-lokien kanssa usein käytetty muoto on yhdistetty Lokiformaatti. Tämä muoto on hyvin samanlainen Yhteinen Loki Muodossa, mutta sisältää muutamia ylimääräisiä kenttiä, lisätietoja antaa käytettäväksi analyysi ja testaus toimintaa., Pääsy loki ennätys, joka on tallennettu Yhdistetyn Log-Muodossa näyttää tältä:
Kuten näette, ensimmäinen seitsemän kentät ovat samat kuin ne, in Yhteinen Loki Muodossa. Jäljellä olevat kentät ovat kaksi muita ominaisuuksia:
Että ”CustomLog” Direktiivin
mainitsin Aiemmin, että kokoonpano Apache lokit on tehty kautta CustomLog direktiivin sisällä Apache HTTP server configuration file., Katsotaanpa katsomaan näyte pääsy loki kokoonpano näyttää järjestelmän tarjoaman joustavuuden CustomLog direktiivin:
LogFormat ”%h %l %u %t \”%r\” %>s %O \”%{Referer}i\” \”%{User-Agent}i\”” yhdistetty
CustomLog /var/log/apache2/access.kirjaudu yhdistetty
– Täällä meillä on määritelty yhdistetyn log-muodossa kautta LogFormat direktiivi, ja seurasi, että jopa määrittämällä sijainti ja muoto (yhdistetty) access kirjaudu käyttäen CustomLog direktiivi. Kuten näet, käyttöoikeuslokin sijainnin tai muodon muuttaminen on yksinkertainen prosessi., Lisäksi CustomLog-direktiivin käyttö tarjoaa meille useita muita ominaisuuksia, joita kuvailemme alla.
Multiple Access Lokit
ei ole sääntöä, joka sanoo, et voi määrittää useita access lokit Apache HTTP server, ja prosessi on itse asiassa melko helppoa; kaikki sinun tarvitsee tehdä, on yksinkertaisesti lisätä CustomLog direktiivien lisätä ylimääräinen, räätälöityjä pääsy loki-tiedosto:
LogFormat ”%h %l %u %t \”%r\” %>s %O \”%{Referer}i\” \”%{User-Agent}i\”” yhdistetty
LogFormat ”%{User-agent}i” agentti
CustomLog /var/log/apache2/access.,kirjaudu yhdistetty
CustomLog /var/log/apache2/agent_access.lokiagentti
ehdolliset lokit
lisäksi on mahdollista kirjoittaa kirjautumiseen ehdollisesti. Tästä voisi olla hyötyä monesta syystä, muun muassa tiettyihin asiakkaisiin liittyvien tietojen jättämisestä pois. Tyypillisesti tämä tapahtuu asettamalla ympäristömuuttujia ja viittaamalla niitä ” env ” – lausekkeella. Lisätietoja saat Tullilogidirektiivin virallisista asiakirjoista.
Lokikierto & Piped lokit
kuin mikä tahansa muu palvelimella, lokitiedostot vievät tilaa., Ja suhteellisen vilkkaalla Apache-palvelimella lokitiedostot, kuten käyttöoikeuslokit, voivat kasvaa nopeasti. Siksi on tärkeää, että käytössä on prosessit vanhojen lokitiedostojen säännölliseen siirtämiseen tai poistamiseen. Onneksi Apache HTTP-palvelimella on kyky tehdä tämä käyttämällä siroja uudelleenkäynnistyksiä ja piped lokiprosesseja.
Apache-palvelimen siro uudelleenkäynnistys mahdollistaa uudelleenkäynnistyksen ilman asiakasyhteyksien menettämistä., Tämän uudelleenkäynnistyksen avulla Apache voi avata ja kirjoittaa uusiin lokitiedostoihin ilman asiakkaan keskeytystä, jolloin käsittelyn suorittaminen voi pakata tai poistaa vanhoja lokitiedostoja tilan säästämiseksi.
Kalkkiviivoilla log prosesseja, toisaalta, voi mahdollistaa log kierto voidaan suorittaa ilman server restart; esimerkiksi ohjelma nimeltä rotatelogs on mukana Apache HTTP server. Sen sijaan, että vain kirjoittaa tiedostoon, pääsy lokimerkinnät voidaan kirjoittaa putken kautta tähän ohjelmaan., Rotatelogs ohjelma sisältää vaihtoehtoja kiertää lokit ehdollisesti ajan tai koon perusteella.
Analysointi Apache Lokit Sumo Logiikka
Kerätä valtavia määriä tietoja lokitiedostoihin on hyötyä vain, jos tiedot voidaan hallita tehokkaasti ja analysoida helposti. Kun se tehdään oikein, se tuottaa arvokkaita oivalluksia, joita voidaan hyödyntää tunnistamaan mahdollisuuksia parantaa web-palvelimen kokoonpanossa tai sovelluksessa., Kun työskentelee Apache lokit, se on parasta yhdistää Sumo Logiikka kerätä Apache lokitiedostot, joka tekee prosessi tuottaa arvokasta visualisointeja vähemmän tuskallista kuin koskaan.
aloitusprosessi on suhteellisen helppo. Itse asiassa, yksinkertaisesti määrittämällä Sumologinen keräilijä ja paikallinen Tiedostolähde Apache access loki, voit olla ylös ja käynnissä perus merkityksessä muutamassa minuutissa. Tutustu Sumo Logic tänään nähdä, miten ne voivat parantaa prosesseja log hallinta ja tietojen analysointi.,
Täydellinen näkyvyys DevSecOps
Vähentää seisokkeja ja siirtyä reaktiivisesta ennakoivaan seurantaan.