2017-10-26 9 views
0

私はしかし、エラーを取得して、私のnginxのアクセスログに表示されPingdomのを除外しようとしています:nginxの:[EMERG]未知のログ形式

http { 
... 

    map $http_user_agent $excluded_ua { 
     pingdom 0; 
     ~Preload 0; 
     default 1; 
    } 

     access_log /var/log/nginx/access.log combined if=$excluded_ua; 

... 
} 

後:私は追加していConfigで

nginx: [emerg] unknown log format "if=$excluded_ua" in /etc/nginx/nginx.conf:55 
nginx: configuration file /etc/nginx/nginx.conf test failed 

エラーを修正し、私はまだ私のアクセスファイルのPingdomエントリを見ています。

94.247.174.83 - - [26/Oct/2017:22:02:56 +0100] "GET/HTTP/1.1" 200 14832 "-" "Pingdom.com_bot_version_1.4_(http://www.pingdom.com/)" 

答えて

2

log_formatが必要な場合があります。デフォルトのものは「結合」されています。 access_log /var/log/nginx/access.log combined if=$excluded_ua;を試すことはできますか?

http://nginx.org/en/docs/http/ngx_http_log_module.html#access_log

+0

OKこれは私が欠けていたものです:) –

+0

実際に、これはエラーを生成しませんが、それは問題を解決していません。 –

+0

'$ excluded_ua'が正しく評価されていることを確認しましたか?たぶんあなたは '〜* pingdom 0;';でマッチングを試みることができます。 '〜*'は大文字と小文字を区別しないマッチングを行います。 '$ excluded_ua'が' if = 0'を強制し、 'access_log'ですべてのログが除外されているかどうかをチェックすることで、正しく評価されていないかどうかを確認できます。 – Hel

関連する問題