Tässä artikkelissa käsitellään tarkemmin Nginx-lokien määritystä ja tarkastelua Ubuntu 20: ssa.04-järjestelmä sovellustoimintojen seuraamiseksi.
On olemassa kahden tyyppisiä lokeja, joissa Nginxissa tallennetut tapahtumat ovat pääsyloki ja toinen virheloki. Jos olet jo ottanut nämä lokit käyttöön Nginx-ydinkokoonpanotiedostossa, löydät molemmat lokityypit hakemistosta / var / log / nginx kaikista Linux-jakeluista.
Nginx-pääsyloki
Kaikki sivuston kävijöihin liittyvät toiminnot tallennetaan pääsylokeihin. Tämän tyyppisestä lokista löydät äskettäin käyttämäsi tiedostot, kuinka Nginx vastasi asiakaspyyntöön, asiakkaan IP-osoitteet, mitä selainta asiakas käyttää, ja paljon muuta. Käyttölokitietoja käyttämällä voit seurata liikennettä löytääksesi sivuston käytön ajan mittaan. Jos seuraat pääsylokeja oikein, voit helposti löytää joitain epätavallisia pyyntöjä, jotka käyttäjä lähettää lähettämänsä sovelluksen virheiden tarkistamiseksi.
Ota Nginx Access -loki käyttöön
Pääsyloki, jonka voit ottaa käyttöön access_log-direktiivillä joko palvelinosassa tai HTTP: ssä.
access_log loki_tiedosto lokin muoto;Ensimmäinen argumentti "log_file" on pakollinen, kun taas toinen argumentti on valinnainen, "log_format". Jos et mainitse lokimuotoa, lokit kirjoitetaan yhdistetyssä oletusmuodossa.
Pääsyloki määritetään oletusarvoisesti Nginx-määritystiedostossa. Joten kaikki virtuaalisen isännän pääsylokit tallennetaan samaan kokoonpanotiedostoon.
http…
access_log / var / log / nginx / access.Hirsi;
…
On suositeltavaa erottaa kaikkien virtuaalisten isäntien käyttölokit tallentamalla uuteen erilliseen tiedostoon.
http…
…
access_log / var / log / nginx / access.Hirsi;
palvelin
kuunnella 80;
Esimerkki palvelimen_nimestä.com
access_log / var / log / nginx / esimerkki.pääsy.Hirsi;
…
…
Lataa uudet NGINX-kokoonpanot uudelleen. Nyt voit käydä esimerkin käyttölokeissa.fi-verkkotunnus tiedostossa / var / log / nginx / example.pääsy.loki käyttämällä seuraavaa komentoa:
$ sudo tail -f / var / log / nginx / esimerkki.pääsy.HirsiMukauta muotoa Access-lokissa
Selitetään esimerkki mukautetun käyttöoikeuslokin muodon määrittämiseksi. Oletusarvoisesti pääsyloki tallennetaan yhdistetyssä lokimuodossa. Siksi voit laajentaa ennalta määritettyä muotoa pakkaussuhteen gzip-vastauksen arvolla.
httplog_format custom '$ remote_addr - $ remote_user [$ time_local]'
'"$ request" $ status $ body_bytes_sent'
'"$ http_referer" "$ http_user_agent" "$ gzip_ratio"';
palvelin
gzip päällä;
…
access_log / var / log / nginx / esimerkki.pääsy.loki mukautettu;
…
Kun olet tehnyt kaikki muutokset Nginxin kokoonpanoon, lataa Nginx uudelleen ja suorita hännäkomento näyttääksesi gzip-suhteen tapahtumalokin lopussa.
$ sudo tail -f / var / log / nginx / esimerkki.pääsy.HirsiNGINX-virheloki
Jos NGINX lakkaa yhtäkkiä toimimasta tai ei toimi oikein, se tallentaa kaikki tapahtumat virhelokiin. Siksi virhelokien avulla löydät lisätietoja. Se tallentaa myös varoitukset, mutta se ei tunnista ilmennyttä ongelmaa.
Ota virheloki käyttöön
Seuraava error_log-direktiivin syntaksi:
error_log lokitiedosto lokin taso;Edellä olevassa syntaksissa ensimmäinen argumentti edustaa lokitiedoston polkua ja toinen argumentti tunnistaa lokitapahtuman suojaustason.
Olemme maininneet alla olevan esimerkin, jossa ohituksen suorittaminen error_log-direktiivissä palvelinkontekstissa.
http…
…
error_log / var / log / nginx / error_log;
palvelin
kuunnella 80;
palvelimen_nimi-esimerkki 1.com;
error_log / var / log / nginx / example1.error_log varoita;
…
palvelin
kuunnella 80;
palvelimen_nimi-esimerkki 2.com;
error_log / var / log / nginx / example2.error_log debug;
…
l
Kun sinun on poistettava virheloki käytöstä, määritä lokitiedoston nimi tiedostoon / dev / null.
error_log / dev / null;
Nginx-virhelokin suojaustaso
Seuraava suojaustaso, jota voit käyttää virhelokissa:
- syntyy: Kun järjestelmäsi on epävakaa, käytetään hätäviesteihin
- hälytys: Luo hälytysviestejä vakavista ongelmista.
- kriitikko: Käytetään kriittisiin ongelmiin välittömään käsittelyyn.
- virhe: Sivua käsiteltäessä saattaa tapahtua virhe.
- varoittaa: Käytetään varoitusviestiin
- ilmoitus: Ilmoitusloki, jonka voit myös ohittaa.
- tiedot: Tietoja, viestejä
- virheenkorjaus: Osoittaa virheen sijainnin, jota käytetään tietojen virheenkorjauksessa.
Johtopäätös
Nginx-käyttö- ja virhelokit ovat hyödyllisiä tiettyjen toimintojen tallennuksessa. Olemme oppineet, kuinka voimme ottaa tämän tyyppiset Nginx-lokit käyttöön ja tarkastella niitä Linux-järjestelmässämme. Siinä kaikki Nginx-lokeista.