Ведение журнала Tomcat: несколько экземпляров одного приложения, отдельные журналы по потокам - PullRequest
0 голосов
/ 04 октября 2019

У меня есть 2 экземпляра приложения на одном сервере (prod / test) на разных портах, и я хочу разделить журналы.

Есть ли способ настроить протоколирование Tomcat для порта HTTP?

Примерно так:

handlers = 1Prod.org.apache.juli.AsyncFileHandler, 2Test.org.apache.juli.AsyncFileHandler
.handlers = 1Prod.org.apache.juli.AsyncFileHandler, 2Test.org.apache.juli.AsyncFileHandler

############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################

1Prod.org.apache.juli.AsyncFileHandler.level = FINE
1Prod.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
1Prod.org.apache.juli.AsyncFileHandler.prefix = MyHandlerProd.

2Test.org.apache.juli.AsyncFileHandler.level = FINE
2Test.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
2Test.org.apache.juli.AsyncFileHandler.prefix = MyHandlerTest.

############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################

org.apache.catalina.core.ContainerBase.[Catalina].[localhost:8000].[/MyApp].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost:8000].[/MyApp].handlers = 1Prod.org.apache.juli.AsyncFileHandler

org.apache.catalina.core.ContainerBase.[Catalina].[localhost:8001].[/MyApp].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost:8001].[/MyApp].handlers = 2Test.org.apache.juli.AsyncFileHandler

Или другой способ, который я вижу, это перепаковать tomcat-juli.jar с собственной реализацией AsyncFileHandler, но как мне получить номер порта или любой другой квалифицирующий маркерв нем?

Любые другие предложения также приветствуются.

...