Nginx

Hoe bekijk ik Nginx-logboeken?

Hoe bekijk ik Nginx-logboeken?
Logboeken zijn erg belangrijk in een systeem om de activiteiten van een toepassing te volgen, omdat ze u nuttige foutopsporingsinformatie bieden en u in staat stellen alle aspecten van een webserver te analyseren. Net als de andere softwaretoepassingen, houdt Nginx ook evenementen bij zoals bezoekers van uw website, ondervonden problemen en meer om bestanden te loggen. De nuttige geregistreerde informatie wordt gebruikt om preventieve maatregelen te nemen om grote ernstige discrepanties in de loggebeurtenissen aan te pakken.

In dit artikel gaan we dieper in op het configureren en bekijken van Nginx-logboeken in Ubuntu 20.04-systeem om de applicatie-activiteiten te bewaken.

Er zijn twee soorten logboeken waarbij geregistreerde gebeurtenissen in Nginx één het toegangslogboek is en het andere het foutenlogboek error. Als je deze logboeken al hebt ingeschakeld in het Nginx-kernconfiguratiebestand, kun je beide soorten logboeken vinden in /var/log/nginx in alle Linux-distributies.

Nginx Access-logboek

Alle activiteiten met betrekking tot sitebezoekers worden vastgelegd in de toegangslogboeken. In dit type log kunt u de bestanden vinden die recentelijk zijn geopend, hoe de Nginx reageerde op een clientverzoek, client-IP-adressen, welke browser een client gebruikt en meer. Door de informatie van het toegangslogboek te gebruiken, kunt u het verkeer volgen om het sitegebruik in de loop van de tijd te vinden. Als u de toegangslogboeken goed bewaakt, kunt u gemakkelijk enkele ongebruikelijke verzoeken vinden die door een gebruiker zijn verzonden om de gebreken in de geïmplementeerde toepassing te controleren.

Schakel het Nginx Access-logboek in

Het toegangslogboek dat u kunt inschakelen met de instructie access_log in de serversectie of in HTTP.

access_log log_file log_format;

Het eerste argument, 'log_file' is verplicht, terwijl het tweede argument optioneel is, 'log_format'. Als u de log-indeling niet vermeldt, worden logs getypt in de standaard gecombineerde indeling.

Het toegangslogboek wordt standaard gedefinieerd in het Nginx-configuratiebestand. Dus alle toegangslogboeken van de virtuele host worden opgeslagen in hetzelfde configuratiebestand.

http

access_log /var/log/nginx/access.logboek;

Het wordt aanbevolen om de toegangslogboeken van alle virtuele hosts te scheiden door ze op te nemen in een nieuw apart bestand.

http


access_log /var/log/nginx/access.logboek;
server
luister 80;
Voorbeeld servernaam.com
access_log /var/log/nginx/voorbeeld.toegang.logboek;



Laad de nieuwe NGINX-configuraties opnieuw. Nu kunt u de toegangslogboeken voor het voorbeeld bezoeken.com-domein in het bestand /var/log/nginx/example.toegang.log, met behulp van de volgende opdracht:

$ sudo staart -f /var/log/nginx/voorbeeld.toegang.log

Opmaak aanpassen in het toegangslogboek

Laten we een voorbeeld uitleggen om een ​​aangepast toegangslogboekformaat te definiëren. Standaard wordt het toegangslogboek vastgelegd in een gecombineerd logformaat. Daarom kunt u het vooraf gedefinieerde formaat uitbreiden met de waarde van gzip-respons voor compressieverhouding.

http
log_format aangepast '$remote_addr - $remote_user [$time_local]'
'"$verzoek" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent" "$gzip_ratio"';
server
gzip aan;

access_log /var/log/nginx/voorbeeld.toegang.log op maat;


Nadat u alle wijzigingen in de configuratie van Nginx hebt aangebracht, laadt u de Nginx opnieuw en voert u vervolgens het tail-commando uit om de gzip-ratio aan het einde van het gebeurtenislogboek weer te geven.

$ sudo staart -f /var/log/nginx/voorbeeld.toegang.log

NGINX-foutlogboek

Als NGINX plotseling niet meer werkt of niet goed werkt, worden alle gebeurtenissen in het foutenlogboek vastgelegd. Daarom kunt u met behulp van de foutenlogboeken meer details vinden. Het registreert ook waarschuwingen, maar het kan geen probleem identificeren dat zich heeft voorgedaan.

Foutenlogboek inschakelen

De volgende syntaxis van de instructie error_log:

error_log log_file log_level;

In de bovenstaande syntaxis vertegenwoordigt het eerste argument het pad van het logbestand en het tweede argument identificeert het beveiligingsniveau van de loggebeurtenis.

We hebben hieronder een voorbeeld genoemd waarin overschrijven wordt uitgevoerd in de instructie error_log in de servercontext.

http


error_log /var/log/nginx/error_log;
server
luister 80;
server_name voorbeeld1.com;
error_log /var/log/nginx/voorbeeld1.error_log waarschuwing;


server
luister 80;
server_name voorbeeld2.com;
error_log /var/log/nginx/voorbeeld2.error_log debuggen;


l

Wanneer u het foutenlogboek moet uitschakelen, wijst u de naam van het logbestand toe aan /dev/null.

error_log /dev/null;

Nginx-beveiligingsniveau van foutenlogboek

Het volgende beveiligingsniveau kunt u gebruiken in het foutenlogboek:

  1. ontstaan: Wanneer uw systeem onstabiel is, gebruikt voor noodberichten
  2. alarmeren: Genereer waarschuwingsberichten van ernstige problemen.
  3. kritiek: Gebruikt voor kritieke problemen voor onmiddellijke afhandeling.
  4. fout: Tijdens het verwerken van een pagina kan er een fout optreden.
  5. waarschuwen: Gebruikt voor een waarschuwingsbericht
  6. merk op: Let op log dat u ook kunt negeren.
  7. info: Voor informatie, berichten
  8. debuggen: wijst de foutlocatie aan die wordt gebruikt voor foutopsporingsinformatie.

Conclusie

Nginx-toegangs- en foutenlogboeken zijn handig voor het vastleggen van bepaalde activiteiten. We hebben geleerd hoe we dit soort Nginx-logboeken op ons Linux-systeem kunnen inschakelen en bekijken. Dat is alles over de Nginx-logboeken.

Strijd om Wesnoth Zelfstudie
The Battle for Wesnoth is een van de meest populaire open source strategiespellen die je op dit moment kunt spelen. Dit spel is niet alleen al heel la...
0 A.D. zelfstudie
Van de vele strategiespellen die er zijn, 0 A.D. slaagt erin om op te vallen als een uitgebreide titel en een zeer diep, tactisch spel ondanks dat het...
Unity3D-zelfstudie
Inleiding tot Unity 3D Unity 3D is een krachtige game-ontwikkelingsengine. Het is platformoverschrijdend, zodat je games voor mobiel, internet, deskto...