nginxの変数をログで確認する

nginx内で使用する変数をデバッグしたかったため、簡単にログを確認する方法を調べてみました。以下の3ステップです。


1.nginx.confファイルの変更

コマンド例:

  1. $ sudo vi /etc/nginx/nginx.conf


httpコンテキスト内の上部に以下の設定を追加します。

nginx.confファイルの設定例:

  1. http {
  2. log_format debug_val_format '$remote_addr - $remote_user [$time_local] "$debug_val"';
  3. ...
  4. }


serverコンテキスト内に、以下のように設定を追加します。

nginx.confファイルの設定例:

  1. server {
  2. ...
  3. set $debug_val "変数名: $変数名";
  4. access_log /var/log/nginx/debug_val.log debug_val_format;
  5. ...
  6. }

※「変数名」には、表示したい変数名を入れます。


2.nginxのリロード

コマンド例:

  1. $ sudo nginx -s reload


3.ログ出力の確認

Webブラウザ等からアクセスし、ログが出力されているかを確認します。

確認コマンド例:

  1. $ cd /var/log/nginx
  2. $ tail -f debug_val.log


ログ出力例:


以下の記事を参考にさせていただきました。

ありがとうございます。


参考サイト

Nginx設定ファイルをデバッグするため、任意の変数をログに出力する方法


※掲載内容は、記事公開時点のものです。紹介されているサービス内容は変更される場合がありますので、ご利用の際は事前にサービス提供元等をご確認ください。

銀座ITラボ | FirebaseやAWSに関する技術情報を配信中

銀座ITラボは、iOS/Androidアプリなどのスマホアプリ、Firebase、AWSなどのクラウドサービス、Webシステム等の技術情報に関する記事を紹介するシンプルメーカーのオウンドメディアです。