Key Files, Commands, and Directories with NGINX
Inhoudsopgave:
- Het toegangslogboek configureren
- Het foutenlogboek configureren
- Locatie van de logbestanden
- Nginx-logbestanden lezen en begrijpen
- Conclusie
Nginx is een open-source, krachtige HTTP- en reverse proxy-server die verantwoordelijk is voor het afhandelen van enkele van de grootste sites op internet. Bij het beheer van NGINX-webservers is het controleren van de logbestanden een van de meest voorkomende taken die u uitvoert.
Weten hoe de logbestanden moeten worden geconfigureerd en gelezen, is erg handig bij het oplossen van server- of applicatieproblemen, omdat deze gedetailleerde foutopsporingsinformatie bieden.
Nginx schrijft records van zijn gebeurtenissen in twee soorten logboeken: toegangslogboeken en foutenlogboeken. Toegangslogboeken schrijven informatie over clientaanvragen en foutenlogboeken schrijven informatie over de server- en toepassingsproblemen.
In dit artikel wordt beschreven hoe u de Nginx-toegangs- en foutenlogboeken kunt configureren en lezen.
Het toegangslogboek configureren
Wanneer een clientverzoek wordt verwerkt, genereert Nginx een nieuwe gebeurtenis in het toegangslogboek. Elk gebeurtenisrecord bevat een tijdstempel en bevat verschillende informatie over de client en de gevraagde bron. Toegangslogboeken kunnen u de locatie van de bezoekers laten zien, de pagina die ze bezoeken, hoeveel tijd ze op de pagina doorbrengen en nog veel meer.
Met de richtlijn
log_format
kunt u het formaat van gelogde berichten definiëren. Met de
access_log
wordt de locatie van het logbestand en het gebruikte formaat
access_log
en ingesteld.
De meest elementaire syntaxis van de
access_log
richtlijn is als volgt:
access_log log_file log_format;
Waar
log_file
het volledige pad naar het logbestand is en
log_format
het formaat is dat door het logbestand wordt gebruikt.
Het toegangslogboek kan worden ingeschakeld in een
http
,
server
of locatierichtlijnblok.
Standaard is het toegangslogboek wereldwijd ingeschakeld in de
http
instructie in het hoofdconfiguratiebestand van Nginx.
http {… access_log /var/log/nginx/access.log;… }
Voor een beter onderhoud wordt aanbevolen om voor elk serverblok een afzonderlijk toegangslogbestand in te stellen. De
access_log
richtlijn die is ingesteld in de
access_log
, heeft voorrang boven die welke is ingesteld in de
http
(hoger niveau) -richtlijn.
http {… access_log /var/log/nginx/access.log;… server { server_name domain.com access_log /var/log/nginx/domain.access.log;… } }
Als er geen logboekindeling is opgegeven, gebruikt Nginx de vooraf gedefinieerde gecombineerde indeling die er als volgt uitziet:
log_format combined '$remote_addr - $remote_user ' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent"';
Als u het logboekformaat wilt wijzigen, vervangt u de standaardinstelling of definieert u een nieuwe. Als u bijvoorbeeld een nieuw logboekformaat wilt definiëren met de naam main, dat het gecombineerde formaat uitbreidt met de waarde die de
X-Forwarded-For
header weergeeft, voegt u de volgende definitie toe in de
http
of serverrichtlijn:
log_format custom '$remote_addr - $remote_user "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
Om de nieuwe indeling te gebruiken, geeft u de naam op na het logboekbestand, zoals hieronder wordt weergegeven:
access_log /var/log/nginx/access.log custom;
Terwijl het toegangslogboek zeer nuttige informatie biedt. het neemt schijfruimte in beslag en kan de serverprestaties beïnvloeden. Als uw server weinig bronnen heeft en u een drukke website heeft, wilt u misschien het toegangslogboek uitschakelen. Om dit te doen, stelt u de waarde van de
access_log
richtlijn in op
off
:
Het foutenlogboek configureren
Nginx schrijft berichten over de toepassing en algemene serverfouten in het foutenlogbestand. Als u fouten in uw webtoepassing ondervindt, is het foutenlogboek de eerste plaats om te beginnen met het oplossen van problemen.
De
error_log
instructie activeert en stelt de locatie en het ernstniveau van het foutenlogboek in. Het heeft de volgende vorm en kan worden ingesteld binnen een
http
,
server
of
location
:
error_log log_file log_level
Met de parameter
log_level
wordt het
log_level
ingesteld. Hieronder staan de niveaus op volgorde van ernst (van laag naar hoog):
-
debug
- Debuggen van berichten.info
- informatieve berichten.notice
- Kennisgevingen.warn
- Waarschuwingen.error
- Fouten tijdens het verwerken van een aanvraag.crit
- Kritieke kwesties. Vereist een snelle actie.alert
- Waarschuwingen. Er moet onmiddellijk actie worden ondernomen.emerg
- Noodsituatie. Het systeem bevindt zich in een onbruikbare staat.
Elk logboekniveau bevat de hogere niveaus. Als u bijvoorbeeld het
emerg
om te
warn
, registreert Nginx ook de
error
,
emerg
,
emerg
en
emerg
berichten.
Wanneer de parameter
log_level
niet is opgegeven, wordt standaard een
error
.
Standaard wordt de
error_log
instructie gedefinieerd in de
http
instructie in het hoofdbestand van nginx.conf:
http {… error_log /var/log/nginx/error.log;… }
Hetzelfde als bij toegangslogboeken, wordt aanbevolen om voor elk serverblok een afzonderlijk foutenlogbestand in te stellen, dat de instelling overschrijft die is overgenomen van de hogere niveaus.
Als u bijvoorbeeld het foutenlogboek van domain.com wilt instellen om te
warn
u:
http {… error_log /var/log/nginx/error.log;… server { server_name domain.com error_log /var/log/nginx/domain.error.log warn;… } }
Wanneer u het configuratiebestand wijzigt, moet u de Nginx-service opnieuw opstarten om de wijzigingen van kracht te laten worden.
Locatie van de logbestanden
Standaard zijn bij de meeste Linux-distributies, zoals Ubuntu, CentOS en Debian, toegangs- en foutenlogboeken te vinden in de map
/var/log/nginx
.
Nginx-logbestanden lezen en begrijpen
U kunt de logbestanden openen en parseren met standaardopdrachten zoals
cat
,
less
,
grep
,
cut
,
awk
, enzovoort.
Hier is een voorbeeldrecord uit het toegangslogbestand dat de standaard Nginx-logboekindeling gebruikt:
192.168.33.1 - - "GET / HTTP/1.1" 200 396 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36"
Laten we eens kijken wat elk veld van het record betekent:
-
$remote_addr
-192.168.33.1
- Het IP-adres van de client die het verzoek indient.$remote_user
--
- HTTP-geverifieerde gebruiker. Als de gebruikersnaam niet is ingesteld, toont dit veld-
. -"$request"
-"GET /
- Het aanvraagtype, pad en protocol.$status
-200
- De reactiecode van de server.$body_bytes_sent
-396
- De grootte van de serverrespons in bytes."$http_referer"
-"-"
- De URL van de verwijzing."$http_user_agent"
-Mozilla/5.0…
- De user-agent van de client (webbrowser).
Gebruik de opdracht
tail
om het logbestand in realtime te bekijken:
Conclusie
Logbestanden bieden u nuttige informatie over serverproblemen en hoe bezoekers omgaan met uw website.
Met Nginx kunt u de toegangs- en foutenlogboeken configureren volgens uw behoeften.
nginxMobile Network Builder kijkt naar IKEA voor inspiratie VNL wil de manier veranderen waarop mobiele basisstations worden ontworpen en uitgerold op zijn hoofd, om de deur voor dekking op het platteland ... VNL wil de manier waarop mobiele basisstations worden gemaakt en geïnstalleerd op zijn kop zetten, waardoor het economischer wordt om diensten aan te bieden op het platteland in ontwikkelingslanden. Om dit te doen, keek het voor consumentenelektronicafabrikanten en meubelgigant IKEA voor in
In staat zijn om deze markt aan te pakken, moet je beginnen met een blanco vel papier en aannemen dat er geen wegen, geen elektriciteit, geen gekwalificeerd personeel en een ARPU van $ 1- $ 2 zijn, volgens Raj.
Iomega helpt u bij het klonen van uw systeem - en speelt ook media Bijna twee jaar zijn verstreken sinds Iomega en EMC (bekend van zijn back-up software) zich aansloten en het nieuwste aanbod van Iomega weerspiegelt de huidige focus van het bedrijf op integratie van de hardware en software-ervaring. Iomega's nieuwe v.Clone, hier geïntroduc
Virtualisatiesoftware is natuurlijk niet nieuw en verschillende fabrikanten hebben al eerder geprobeerd zorgen voor virtualisatie op een USB-flashstation. Het verschil hier is dat het een mainstream leverancier van harde schijven is die virtualisatie biedt voor consumenten - en dat doet op iets dat veel groter is dan een schamele flashdrive die nauwelijks je internetfavorieten en e-mail kan verwerken.
We besteden veel tijd aan het doorlezen van sociale netwerksites, maar dat is niet genoeg Dat betekent dat we allemaal sociale vlinders zijn. Het lijkt erop dat e-mail het nieuws van gisteren is geworden. Terwijl het controleren van e-mail vroeger onze belangrijkste reden was om online te gaan, besteden we nu meer van onze online tijd aan het surfen op sociale netwerken, volgens nieuwe nummers van Nielsen. We spenderen 23 procent van onze online tijd aan surfen op sociale netwerken zoals Faceboo
Dat nieuws hoeft mij niet per se te verbazen: ik kan 10 minuten doorbrengen op Facebook en verstrikt raken in de activiteiten van 25 verschillende mensen, terwijl het besteden van diezelfde 10 minuten aan e-mail me in staat zou stellen om veel nutteloze junkmail te verwijderen en misschien een bericht te lezen. Maar als ik echt stop om erover na te denken, houdt Facebook me niet echt beter verbonden met de meeste mensen. Hier zijn vijf redenen waarom.