使用 Tomcat 8 将外部日志记录配置的位置指定到特定的 Web 应用程序
Specify location of external logging configuration to specific webapps using Tomcat 8
我只能使用 Tomcat 8,我需要在同一个 Tomcat.
上部署多个 spring 基于引导的 Web 应用程序
我试图避免使用包含在 war 文件中的自己的日志记录配置构建工件。
通过使用系统 属性 -Dlogging.conf 可以为一个应用程序指定 logback.xml 文件。但是,在 setenv.sh 中添加 -Dlogging.conf 将为 Tomcat 中部署的每个 Web 应用指向相同的日志记录配置。
是否有使用 Tomcat 处理外部日志记录配置的智能方法?
可以使用上下文指定外部日志记录配置。
有多种定义上下文的方法。以下答案给出了一个很好的总结:
我现在为每个 webapp 保存一个上下文文件:
.../tomcat/conf/Catalina/localhost/APP-NAME.xml
其中 app-name 是 Web 应用程序的部署名称。
上下文指出包含 logback.xml 配置的资源文件夹。然后指定的资源文件夹可供 webbapp 访问,就像它位于 /WEB-INF/classes/
中一样
下面的 xml 显示了一个上下文文件的示例,该文件可用于包含外部日志记录和 webbapp 所需的其他配置。
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/APP-NAME">
<Resources className="org.apache.catalina.webresources.StandardRoot">
<PreResources className="org.apache.catalina.webresources.DirResourceSet"
base="/path/to/logging/config/folder"
internalPath="/"
webAppMount="/WEB-INF/classes" />
</Resources>
</Context>
我只能使用 Tomcat 8,我需要在同一个 Tomcat.
上部署多个 spring 基于引导的 Web 应用程序我试图避免使用包含在 war 文件中的自己的日志记录配置构建工件。
通过使用系统 属性 -Dlogging.conf 可以为一个应用程序指定 logback.xml 文件。但是,在 setenv.sh 中添加 -Dlogging.conf 将为 Tomcat 中部署的每个 Web 应用指向相同的日志记录配置。
是否有使用 Tomcat 处理外部日志记录配置的智能方法?
可以使用上下文指定外部日志记录配置。
有多种定义上下文的方法。以下答案给出了一个很好的总结:
我现在为每个 webapp 保存一个上下文文件:
.../tomcat/conf/Catalina/localhost/APP-NAME.xml
其中 app-name 是 Web 应用程序的部署名称。
上下文指出包含 logback.xml 配置的资源文件夹。然后指定的资源文件夹可供 webbapp 访问,就像它位于 /WEB-INF/classes/
中一样下面的 xml 显示了一个上下文文件的示例,该文件可用于包含外部日志记录和 webbapp 所需的其他配置。
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/APP-NAME">
<Resources className="org.apache.catalina.webresources.StandardRoot">
<PreResources className="org.apache.catalina.webresources.DirResourceSet"
base="/path/to/logging/config/folder"
internalPath="/"
webAppMount="/WEB-INF/classes" />
</Resources>
</Context>