2016-09-26 10 views
0

ステータス400が受信されたにもかかわらずログファイルが空の場合(作成されていますが空の場合)のみ、POST要求の本文をログファイル(access_400.log)に書き込もうとしています。私はaccess.logにエラーを見ることができます。Nginxの条件付きロギングが機能しません

user nginx; 
worker_processes auto; 

error_log /var/log/nginx/error.log; 

pid  /var/run/nginx.pid; 


events { 
    worker_connections 1024; 
} 

http { 

port_in_redirect off; 
include  /etc/nginx/mime.types; 
default_type application/octet-stream; 

log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 
        '$status $request_length $body_bytes_sent "$http_referer" ' 
        '"$http_user_agent" "$http_x_forwarded_for"'; 

log_format full '$remote_addr - $remote_user [$time_local] "$request" ' 
        '$status $request_length $body_bytes_sent "$http_referer" ' 
        '"$http_user_agent" "$http_x_forwarded_for" [$request_body]'; 

map $status $anyerr { 
    ~^[45] 1; 
    default 0; 
} 

access_log /var/log/nginx/access.log main; 
access_log /var/log/nginx/access_400.log full if=$anyerr; 

sendfile  on; 

keepalive_timeout 65; 
"/etc/nginx/nginx.conf" 62L, 1873C                             52,5   52% 
# Elastic Beanstalk Modification(EB_INCLUDE) 

log_format healthd '$msec"$uri"' 
        '$status"$request_time"$upstream_response_time"' 
        '$http_x_forwarded_for'; 

include /etc/nginx/conf.d/*.conf; 
# End Modification 

} 

答えて

0

access_log /var/log/nginx/access_400.log full if=$anyerr;サーバーなくHTTP

の子でなければなりません
関連する問題