Nginx 수기

1389 단어
Nginx http 요청 에 따라 상태 출력 로 그 를 되 돌려 줍 니 다.
Require Nginx 1.7+
search 항목 의 nginx 요청 로그 출력 이 너무 커서 되 돌아 오 는 상태 에 따라 다른 log 를 전환 해 야 합 니 다.formate, nginx 의 status 변수 와 두 가지 log 에 따라 어 리 석 은 방법 을 생각 했 습 니 다.formate 조합 이 파일 에 출력 되 어 이 요 구 를 실현 합 니 다.
상태 200 의 로 그 는 응답 하지 않 아 도 됩 니 다 $request상태 기타 로그 인쇄 $request/etc/nginx/nginx.conf
 http {
    map $status $loggable0 {
        ~^2  1;
        default 0;
    }
    map $status $loggable1 {
        ~^[1345]  1;
        default 0;
    }

    log_format monitor0   'OWL NGINX $remote_addr $http_x_forwarded_for $host $time_local $status '
                          '$request_time $request_length $bytes_sent $http_referer $jumei_sid '
                          ''
                          '$http_user_agent $jumei_uid';
    log_format monitor1   'OWL NGINX $remote_addr $http_x_forwarded_for $host $time_local $status '
                          '$request_time $request_length $bytes_sent $http_referer $jumei_sid '
                          '$request $http_user_agent $jumei_uid';
  }

사이트 설정
server {

    access_log /home/logs/nginx/search.access.log monitor0 buffer=32k flush=5s if=$loggable0;
    access_log /home/logs/nginx/search.access.log monitor1 buffer=32k flush=5s if=$loggable1;
}  

좋은 웹페이지 즐겨찾기