Установка значений car go .tomcat.valve в файле build.gradle - PullRequest
0 голосов
/ 28 апреля 2020

Что я пытаюсь сделать : я хочу добавить AccessLogValve на сервер tomcat. xml, чтобы я мог регистрировать пользовательские значения заголовков. (ref: https://jfrog.com/knowledge-base/how-can-i-log-custom-request-headers-using-the-tomcat-access-log-valve/)

У меня проблема : Каждый раз, когда запускается gradle, он создает новый сервер. xml. Я хочу добавить свойство контейнера cargo.tomcat.valve, однако не могу найти работающий формат.

Клапан, который я хочу добавить, это Access Log Valve https://tomcat.apache.org/tomcat-8.5-doc/config/valve.html#Access_Log_Valve

Неудачный пример: containerProperties ['cargo.tomcat.valve'] = 'className=org.apache.catalina.valves.AccessLogValve| pattern=combined'

Я пробовал разные версии из вышеперечисленного, но ни один, кажется, не работает.

Я вижу, что пример maven это

<cargo.tomcat.valve.stuckthread>
    className=org.apache.catalina.valves.StuckThreadDetectionValve|
    threshold=60
</cargo.tomcat.valve.stuckthread>

ref: https://codehaus-cargo.github.io/apidocs/org/codehaus/cargo/container/tomcat/TomcatPropertySet.html#CUSTOM_VALVE

Однако я не могу найти способ добавить пользовательские клапаны используя gradle.

1 Ответ

0 голосов
/ 30 апреля 2020

После исследования мы выяснили, что журнал доступа обновляется на сервере. xml файл для tomcat может работать с автомобилем go версия плагина> = 2.3 (текущая последняя версия 2.7.1 по состоянию на 30- Апр-2020)

Пример обновления клапана в build.gradle должен быть следующим:

containerProperties  = [
            'cargo.tomcat.ajp.port' : 8050,
            'cargo.tomcat.valve' : "className=org.apache.catalina.valves.AccessLogValve|pattern=%h %l %u %t &quot;%r&quot; %s %b %{X-Custom-Header}i|directory=logs|prefix=localhost_access_log.|suffix=.txt"
    ]
...