
Я хочу добавить значение cookie 'my_session' в журнал ошибок Apache. Я добавил журнал доступа '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"
Я использовал «mod_unique_id» для получения уникального идентификатора запроса.
Мне требуется только добавить значение SessionId/значение Cookie в журнал ошибок Apache.
решение1
Поэтому в зависимости от того, находится ли файл cookie, который вы хотите зарегистрировать, в запросе или ответе, вы просто используете%{header_name}яили%{header_name}осоответственно.
решение2
Это отрывок из моего файла httpd.conf, который я сейчас использую.
LogFormat "%r \"%{Cookie}i\"" combined