ngx_http_session_log_module モジュール

設定例
ディレクティブ
     session_log
     session_log_format
     session_log_zone
埋め込み変数

ngx_http_session_log_module モジュールは、個々のHTTPリクエストではなくセッションの記録(つまり、複数のHTTPリクエストを統合する)を有効にします。

このモジュールは商用許可の一部として利用可能です。

設定例

次の設定は、セッションログを設定し、リクエストをクライアントのアドレスと"User-Agent"リクエストヘッダフィールドに応じてセッションに写像します:

    session_log_zone /path/to/log format=combined
                     zone=one:1m timeout=30s
                     md5=$binary_remote_addr$http_user_agent;

    location /media/ {
        session_log one;
    }

ディレクティブ

構文: session_log name | off;
デフォルト:
session_log off;
コンテキスト: http, server, location

指定したセッションログの利用を有効にします。特別な値 off は上の設定レベルから受け継いだsession_log ディレクティブの影響をキャンセルします。

構文: session_log_format name string ...;
デフォルト:
session_log_format combined "...";
コンテキスト: http

ログの出力フォーマットを設定する。$body_bytes_sent変数の値は、全てのリクエストに渡ってセッションに統合されます。ログに利用可能な他の全ての変数の値は、セッション内で最初のリクエストに対応します。

構文: session_log_zone path zone=name:size [format=format] [timeout=time] [id=id] [md5=md5] ;
デフォルト: -
コンテキスト: http

ログファイルへのパスと現在のアクティブなセッションを保持するために使われる共有メモリの領域を設定します。

セッションの最後のリクエストからの経過時間が指定された timeout (デフォルトでは30秒)を超えない限り、セッションはアクティブだと見なされます。一度セッションがアクティブでなくなると、それはログに書き込まれます。

id パラメータはどのリクエストがセッションに写像されたかを識別します。id パラメータはMD5ハッシュの16進数表現で設定されます(例えば、クッキーから変数を使って取得します)。このパラメータが指定されないか、有効なMD5ハッシュの表現では無い場合、nginxはmd5 パラメータの値からMD5ハッシュを計算し、このハッシュを使って新しいセッションを作成します。idmd5 の両方のパラメータとも、変数を含むことができます。

format パラメータはsession_log_format ディレクティブで設定される独自のセッションログ書式を設定します。format が指定されない場合は、事前に定義された"combined"が使われます。

埋め込み変数

ngx_http_session_log_module モジュールは二つの埋め込み変数をサポートします:

$session_log_id
現在のセッションID;
$session_log_binary_id
現在のセッションIDのバイナリ形式(16バイト)

TOP
inserted by FC2 system