Как записать запрошенный путь в журнале доступа? - PullRequest
0 голосов
/ 12 июля 2019

Мы используем Jboos Eap 7.1 в нашей организации с включенным журналом доступа по следующей схеме:

<access-log pattern="%h %l %u %t %r %s %b %{Referer}i %{User-Agent}i %{COOKIE}i %{SET-COOKIE}o %S %I %T"/>

Каждые 5 минут журнал сервера сообщает:

[org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver] (задание по умолчанию-49) Решено [org.springframework.web.HttpMediaTypeNotAcceptableException: не удалось найти приемлемое представление]

Но в журнале доступа мы видим:

    GET /general-error.html HTTP/1.1 404 

Какая резервная страница для ошибок, поэтому мы не знаем, какой URL или контроллер пружины запрашивается, как я могу увидеть фактический запрошенный путь, как это делает nginx?

1 Ответ

0 голосов
/ 12 июля 2019

Вы можете настроить обработку запросов / Обработчик запросов с помощью следующих команд.

  1. Создать новый фильтр выражений с помощью обработчика запросов

/subsystem=undertow/configuration=filter/expression-filter=requestDumperExpression:add(expression="dump-request")

  1. Включить фильтр выражений на веб-сервере Undertow

/subsystem=undertow/server=default-server/host=default-host/filter-ref=requestDumperExpression:add

Приведенные выше команды добавят следующую конфигурацию в domain.xml / standalone.xml в подсистеме undertow

<server name="default-server">
            <http-listener name="default" socket-binding="http" redirect-socket="https"/>
            <host name="default-host" alias="localhost">
                ...
                <filter-ref name="requestDumperExpression"/>
            </host>
        </server>
        ...
        <filters>
            ...
            <expression-filter name="requestDumperExpression" expression="dump-request"/>
        </filters>

Выход будет записан в файл server.log.

Для получения более подробной информации см. Следующий URL: https://access.redhat.com/solutions/2429371

...