Apache の ErrorLogFormat に Cookie 値またはセッション ID 値を追加するにはどうすればよいですか?

Apache の ErrorLogFormat に Cookie 値またはセッション ID 値を追加するにはどうすればよいですか?

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

関連情報