nginx 로그에는 액세스 로그와 오류 로그라는 두 가지 주요 유형이 있습니다. 액세스 로그는 주로 클라이언트가 nginx에 액세스하기 위한 모든 요청을 기록하며 형식을 사용자 정의할 수 있습니다. 오류 로그는 주로 클라이언트가 nginx에 액세스할 때 오류가 발생하는 경우 로그를 기록하며 형식은 사용자 정의를 지원하지 않습니다. 두 로그 모두 선택적으로 끌 수 있습니다.
액세스 로그를 통해 사용자의 지리적 출처, 점프 소스, 사용 터미널, 특정 URL에 대한 방문 횟수와 같은 관련 정보를 오류 로그를 통해 얻을 수 있으며, 특정 서비스의 성능 병목 현상을 얻을 수 있습니다. 시스템의 서버 등. 따라서 로그를 잘 활용하면 귀중한 정보를 많이 얻을 수 있습니다.
액세스 로그
[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';
설명:
변수 이름 |
변수 설명 |
예 |
$remote_addr |
클라이언트 주소 |
113.140.15.90 |
$remote_user |
클라이언트 사용자 이름 |
- |
$time_local |
액세스 시간 및 시간대 |
2012년 7월 18일:17:00: 01 +0800 |
$request |
requestedURI 및 HTTPprotocol | "GET /pa/img/home/ logo-alipay- t.png HTTP/1.1" |
$http_host |
요청 주소는 브라우저에 입력한 주소입니다(IP 또는 도메인 이름) |
img.alipay.com 10.253.70.103 |
$상태 |
HTTP요청 상태 |
200 |
$ upstream_status |
upstreamstatus |
200 |
$body_bytes_sent |
클라이언트로 전송되는 파일 콘텐츠 크기 |
547 |
$http_referer |
점프 소스 |
"https://cashier.alipay.com.../" |
$http_user_agent | 사용자 터미널 에이전트 |
"Mozilla/4.0(호환; MSIE 8.0; Windows NT 5.1; Trident/4.0; SV1; GTB7.0; .NET4.0C; |
$ssl_protocol |
SSL프로토콜 버전 |
TLSv1 |
$ssl_cipher |
Ex |
RC4-SHA |
$upstream_addr |
백엔드 upstream의 주소, 즉 실제로 서비스를 제공하는 호스트 주소 |
10.228.35.2 47:80 |
$request_time |
전체 요청의 총 시간 |
0.205 |
$upstream_response_time |
요청 프로세스 중 , upstream응답 시간 |
0.002 |
참고: $http_host 값은 브라우저에 입력하는 값과 관련이 있습니다.
오류 로그
오류 메시지 |
오류 설명 |
---|---|
"업스트림이 조기에(조기) 연결을 닫았습니다." |
Request 예외 uri 중에 발생하는 문제는 upstream이 아직 사용자에게 응답을 반환하지 않았을 때 사용자 연결을 끊기 때문에 발생합니다. 이는 시스템에 영향을 주지 않으며 무시할 수 있습니다 |
( 1) 서버의 동시 연결 수가 용량을 초과하여 서버가 | 일부 연결을 중단합니다.
(2) 서버가 클라이언트에 데이터를 보내는 동안 고객이 브라우징을 껐습니다. (3) 업스트림에 연결하는 동안 브라우저가 Stop
|
연결 시 백엔드 업스트림이 중단되거나 차단되면 사용자는 업스트림에서 응답 헤더를 읽는 동안 |
|
사용자가 연결 성공 후 데이터를 읽을 때 백엔드 업스트림이 중단되거나 차단되면 업스트림에 요청을 보내는 동안 |
|
Nginx 및 | upstream이 성공적으로 연결되어 데이터를 전송합니다. 백엔드 upstream이 중단되거나 차단되면 이 오류
|
nginx가 후속 | upstream|
nginx 연결 시간 초과 업스트림에서 응답 헤더를 읽는 동안 오류가 발생했습니다." |
| 헤더에 응답하는 동안 시간이 초과되었습니다.
"(110: 연결 시간 초과) 업스트림을 읽는 동안" "(104: 피어에 의한 연결 재설정) 업스트림에 연결하는 동안" |
|
RST를 보냈습니다. 연결을 재설정
|
"업스트림이 업스트림에서 응답 헤더를 읽는 동안 잘못된 헤더를 보냈습니다. " |
| "클라이언트도 전송하려고 했습니다. Large body"|
는 허용되는 클라이언트 요청 콘텐츠의 최대 값을 설정하는 데 사용됩니다. 기본값은 1M이고, 클라이언트가 보낸 | body가 설정을 초과합니다. 값
|
"로그 다시 열기" |
사용자가 kill -USR1 명령을 보냅니다. |
"정상적으로 종료 중", |
用户发送kill -WINCH命令 |
"업스트림 내부에 서버가 없습니다." |
upstream下未配置 server |
"업스트림에 연결하는 동안 라이브 업스트림이 없습니다." |
upstream下的server전체tour挂了 |
"SSL_do_handshake() 실패" |
SSL握手失败 |
"클라이언트로 보내는 동안 SSL_write()가 실패했습니다(SSL:)" |
|
"(13: 권한이 거부되었습니다) 업스트림을 읽는 동안" |
|
"(98: 이미 사용 중인 주소) 업스트림에 연결하는 동안" |
|
"(99: 요청한 주소를 할당할 수 없음) 업스트림에 연결하는 동안" |
|
"ngx_slab_alloc() 실패: SSL 세션 공유 캐시에 메모리가 없습니다" |
ssl_session_cache大小不够等원因造成 |
"SSL 핸드셰이킹 중에 세션 캐시에 새 SSL 세션을 추가할 수 없습니다." |
ssl_session_cache大小不够等하라因造成 |
"send() 실패 (111 : 연결 거부됨)" |
|
위 내용은 nginx 로그를 읽는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!