Nginx で変数をログに出力する
Nginx を使用していると、実際に変数の中身を確認して設定を組みたい、特定の変数の中身をログに出力して確かめたい!なんてことがあると思います。
そんなときに役立つ方法をご紹介します。
例えば、 クッキーの値をログに出力したい場合以下のようにします。※クッキー名は SampleXXXとします。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
http { ------省略------ log_format debug '$remote_addr - $remote_user [$time_local] ' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent" $request_time "$debug_val"'; ------省略------ } server { access_log /var/log/nginx/access.log debug; set $debug_val $cookie_SamapleXXX; } |
このように $debug_val という変数をログ出力にし、その値に好きな値を set するだけです。
これを応用すれば、if文の分岐に使用している変数などの変化を追うことができます。
大したことはないですが、ちょっとした知識として覚えておきたいところです。