gpt4 book ai didi

java - Tomcat - 一台主机有 2 个 Web 应用程序

转载 作者:行者123 更新时间:2023-12-01 12:59:33 25 4
gpt4 key购买 nike

我正在 Apache 2 下使用 tomcat 7,我需要在同一主机(例如 localhost)下有 2 个 Web 应用程序

我之前使用过 2 个网络应用程序,但在不同的域上,所以我有不同的主机等。

目前,我正在与 log4j 作斗争,并注意到 tomcat 启动时出现以下情况:

  1. 部署了 A.war,我在 A.log 文件中看到了日志
  2. B.war 已部署,但我看不到日志,有时我在 A.log 而不是 B.log 中看到日志

当我像PropertyConfigurator.configure("")一样以编程方式在B.war中加载log4j时,我开始在B.log上获取日志,但应用程序A停止写入日志。看起来它使用了相同的类加载器并加载/更改了相同的 log4j

你能告诉我我做错了什么吗?我知道每个 tomcat 实例都使用一个 JVM,但是我如何确定每个应用程序都使用每个类加载器?

最佳答案

您可以运行 2 个 Web 应用程序并为这两个 Web 应用程序添加配置。或者您可以使用单个配置并在文件中添加多个包。

例如

<appender name="services" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/shared_services.log</file>
<encoder>
<pattern>%d{ISO8601} | %-5level | %thread | %logger{1} | %message%n</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<maxIndex>30</maxIndex>
<fileNamePattern>services.log.%i</fileNamePattern>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>10MB</MaxFileSize>
</triggeringPolicy>
</appender>

<appender name="services1" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/shared_services.log</file>
<encoder>
<pattern>%d{ISO8601} | %-5level | %thread | %logger{1} | %message%n</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<maxIndex>30</maxIndex>
<fileNamePattern>services1.log.%i</fileNamePattern>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>10MB</MaxFileSize>
</triggeringPolicy>
</appender>


<root level="ALL">
<appender-ref ref="test"/>
</root>

<logger name="org" level="INFO"/>

<logger name="org.apache.cxf.interceptor" level=""/>



</configuration>

上面的示例中创建了 2 个文件。

关于java - Tomcat - 一台主机有 2 个 Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23626567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com