Проблемы с журналированием Java Tomcat RequestDumperFilter - PullRequest
0 голосов
/ 10 декабря 2018

На моем сервере Tomcat я добавил RequestDumperFilter в файл web.xml и мой файл logging.properties.Все работает как надо, за исключением того, что я заметил сегодня утром.

У меня есть веб-приложение, которое будет вызывать серверную часть каждые 5 секунд по разным причинам.Так что, если я нажму на новую страницу примерно в то же время, что и этот 5-секундный вызов, журналы будут разбиты вместе в выходной файл.Я думал, что Java подождет, пока файл не будет использован для повторной записи в него.

Есть ли способ гарантировать, что журналы будут отправлены в файл по порядку и не будут разбиты вместе?

Вот ссылка на RequestDumperFilter: RequestDumperFilter Github

Моя web.xml запись, которую я добавил:

<filter>
    <filter-name>requestdumper</filter-name>
    <filter-class>
        org.apache.catalina.filters.RequestDumperFilter
    </filter-class>
</filter>

Моя logging.properties :

...
handlers = ... 1request-dumper.org.apache.juli.FileHandler
...
1request-dumper.org.apache.juli.FileHandler.level = INFO
1request-dumper.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1request-dumper.org.apache.juli.FileHandler.prefix = request-dumper.
1request-dumper.org.apache.juli.FileHandler.formatter = org.apache.juli.VerbatimFormatter
org.apache.catalina.filters.RequestDumperFilter.level = INFO
org.apache.catalina.filters.RequestDumperFilter.handlers = 1request-dumper.org.apache.juli.FileHandler

1 Ответ

0 голосов
/ 04 марта 2019

Если вы имеете в виду, что дампер запросов может не обязательно регистрировать запрос и ответ один за другим непосредственно в сценарии многостраничного вызова / потоков, это специально.Вы получили идентификатор потока обработки, чтобы различать запросы, и они отделяются ------------------ после запроса и такими же, прежде чем ответ будет напечатан.Окончательно добавляется суффикс строки ================.

...