Home  >  Article  >  Operation and Maintenance  >  How to read nginx logs

How to read nginx logs

青灯夜游
青灯夜游Original
2019-06-06 18:08:406753browse

There are two main types of nginx logs: access logs and error logs. The access log mainly records every request of the client to access nginx, and the format can be customized; the error log mainly records the log when the client accesses nginx and an error occurs, and the format does not support customization. Both logs can be optionally turned off.

How to read nginx logs

Through the access log, you can get relevant information such as the user’s geographical origin, jump source, usage terminal, number of visits to a certain URL; through the error log, you can You can get the performance bottleneck of a certain service or server in the system. Therefore, by making good use of logs, you can get a lot of valuable information.

Access Log

[Access.log]

log_format  main  '$remote_addr $remote_user [$time_local] "$request" $http_host '
                  '$status $upstream_status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" $ssl_protocol $ssl_cipher $upstream_addr '
                  '$request_time $upstream_response_time';

Description:

##$time_local18/Jul/ 2012:17:00:01 0800##$request and $http_host or domain name )User Terminal Agent##SSLTLSv1 ##$ssl_cipher$upstream_addr, that is, the address of the host that actually provides the service##$request_time

#Variable name

Variable description

Example

$remote_addr

Client address

##113.140. 15.90

##$remote_user

Client user name

-

Access time and time zone

Requested

URI

HTTPProtocol

"GET /pa/img/home/logo-alipay-t.png HTTP/1.1"

The request address is the address you enter in the browser (

IP

img.alipay.com

##10.253.70.103

##$status

HTTPRequest Status

200

$upstream_status

##upstreamstatus

200

$body_bytes_sent

The size of the file content sent to the client

547

#$http_referer

Jump source

"https://cashier.alipay.com.../"

##$http_user_agent

"Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1 ; Trident/4.0; SV1; GTB7.0; .NET4.0C;

##$ssl_protocol

Protocol Version

Algorithm in exchange data

RC4-SHA

The address of the background

upstream

10.228.35.247:80

The total time of the entire request

0.205

##$upstream_response_time

During the request ,upstreamResponse time

##0.002

Note: The value of $http_host is related to the value you enter in the browser.

Error log

( When the user is connecting, if the backend When the user reads data after a successful connection, if the user encounters a backend ##"(111: Connection refused) while sending request to upstream "When Nginx and "(110: Connection timed out) while connecting to upstream"nginx timed out when connecting to the subsequent " (110: Connection timed out) while reading upstream"nginx timed out while reading the response from "(110: Connection timed out) while reading response header from upstream"nginx timed out while reading response headers from "(110: Connection timed out) while reading upstream"nginx timed out while reading the response from "(104: Connection reset by peer) while connecting to upstream"upstream sent "upstream sent invalid header while reading response header from upstream"The response header sent by upstream is invalid"upstream sent no valid HTTP/1.0 header while reading response header from upstream"The response header sent by upstream is invalid"client intended to send too large body"1M, the ##"reopening logs"##"could not add new SSL session to the session cache while SSL handshaking"ssl_session_cache large and small, etc. Cause creation"send() failed (111 : Connection refused)"
##Error message

Error description

"upstream prematurely (premature) closed connection"

The exception that occurs when requesting

uri is caused by the user disconnecting when upstream has not returned a response to the user. It has no impact on the system and can be ignored

##"recv() failed (104: Connection reset by peer)"

1) The number of concurrent connections of the server exceeds its capacity, and the server will

Down some of the connections; (

2) The client closed the browser, but the server is still sending data to the client;

(

3) The browser clicked

Stop

"(111: Connection refused) while connecting to upstream"

upstream hangs or is blocked, the user will receive this error

"(111: Connection refused) while reading response header from upstream"

Upstream hangs up or is unavailable, you will receive this error

upstream are successfully connected and sending data, if the backend

upstream hangs or is unavailable, you will receive this Error

upstream

upstream

upstream

upstream

RST to reset the connection

is used to set the client requests that are allowed to be accepted. The maximum value of the content, the default value is
body sent by the

client exceeds the set value

User sends

kill -USR1 command

"gracefully shutting down",

USEkill -WINCH instruction

"no servers are inside upstream"

upstream Deploymentserver

##"no live upstreams while connecting to upstream"

upstream下下server全都挂了

"SSL_do_handshake() failed"

SSL handshake failed

"SSL_write( ) failed (SSL:) while sending to client"

## ​

"(13: Permission denied) while reading upstream"

 

"(98: Address already in use) while connecting to upstream"

"(99: Cannot assign requested address) while connecting to upstream"

"ngx_slab_alloc() failed: no memory in SSL session shared cache"

ssl_session_cache large and small, etc. cause creation

## ​

The above is the detailed content of How to read nginx logs. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn