
Apache エラー ログに 'my_session' Cookie 値を追加したいと思います。以下のようにアクセス ログ 'LogFormat' を追加しました。
<IfModule mod_ssl.c>
<VirtualHost *:443>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\" [%{my_session}C : %{UNIQUE_ID}e]" detailed
CustomLog ${APACHE_LOG_DIR}/ssl.www.example.com_access.log detailed
ErrorLogFormat "[%t] [%l] [pid %P] [%{UNIQUE_ID}e] [client %a] %M"
ErrorLog ${APACHE_LOG_DIR}/ssl.www.example.com_error.log
</VirtualHost>
</IfModule>
しかし、「ErrorLogFormat」に同じ形式を追加すると、「認識されないエラー ログ形式ディレクティブ %C」というエラーが発生します。
ErrorLogFormat "[%t] [%l] [pid %P] [%{my_session}C : %{UNIQUE_ID}e] [client %a] %M"
一意のリクエスト ID を取得するために、「mod_unique_id」を使用しました。
私の要件は、Apache エラー ログに SessionId 値/Cookie 値を追加することだけです。
答え1
ログに記録したいCookieがリクエストかレスポンスかに応じて、次のように使用します。%{ヘッダー名}iまたは%{ヘッダー名}oそれぞれ。
答え2
これは私が現在使用している httpd.conf ファイルからの抜粋です。
LogFormat "%r \"%{Cookie}i\"" combined