Можно ли записать первую строку ответа в apache? - PullRequest
1 голос
/ 18 мая 2010

У нас есть сервер Tomcat, на котором мы пытаемся записать версию HTTP, с которой отправляется ответ. Несколько раз мы видели, что это HTTP / 0.9, который убивает контент (я полагаю, не поддерживается?). Мы хотели бы получить некоторые статистические данные об этом, используя журнал доступа в Apache. Однако, поскольку строка заголовка для этого ничем не префиксирована, мы не можем использовать запись% {xxx} o.

Есть ли способ получить это?

Пример:

Ответ:

HTTP/1.1 503 This application is not currently available
Server: Apache-Coyote/1.1
Content-Type: text/html;charset=utf-8
Content-Length: 1090
Date: Wed, 12 May 2010 12:53:16 GMT
Connection: close 

И мы хотели бы поймать HTTP / 1.1 (альтернативно, HTTP / 1.1 503 Это приложение в настоящее время недоступно .

Возможно ли это? У нас нет доступа к обслуживаемому приложению, поэтому мы должны сделать это либо в качестве фильтра Java, либо в журнале доступа tomcat - желательно в журнале доступа.

1 Ответ

1 голос
/ 20 мая 2010

Включение <Valve className="org.apache.catalina.valves.RequestDumperValve"/> в server.xml записывает заголовки запроса и ответа для каждого запроса.

Пример:

19-May-2010 12:26:18 org.apache.catalina.valves.RequestDumperValve invoke
INFO:           protocol=HTTP/1.1
...