`
ywu
  • 浏览: 455716 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

多tomcat实例下logback日志不输出

阅读更多

问题描述:

之前在测试环境(一台Linux主机)部署了多个tomcat实例(使用cp命令,修改端口),然后将同一个应用部署到多个tomcat实例下,logback配置文件中配置不同的目录作为日志输出地,但是在多个tomcat实例同时运行时,logback配置不起作用,即日志并没有输出到每个tomcat实例对应webapp目录下应用中logback.xml中配置的日志输出目录,而是都输出到了各tomcat实例的logs/catalina.out中,导致catalina.out文件过大,不利于日志查看

 

 后来同时说他在本地还原测试环境,测试时发现日志全输出到第一个启动的tomcat实例中对应的应用配置的logback.xml中配置的日志输出目录中,至于是不是多tomcat实例下logback读取的都是内存中的同一个还有待求证。

 

解决:

项目中使用了spring MVC框架,加上logback的spring扩展就OK了,具体如下:

1、下载logback的spring扩展包 logback-ext-spring-0.1.1.jar,放入classpath中,注意,如果jre是1.6及以下的,必须使用0.1.1版本的扩展,0.1.2版本及以上的扩展包使用了jdk7编译;

2、在web.xml中加入监听

  1. <context-param>  
  2.          <param-name>logbackConfigLocation</param-name>  
  3.          <param-value>classpath:logback.xml</param-value>  
  4. </context-param>  
  5. <listener>  
  6.          <listener-class>ch.qos.logback.ext.spring.web.LogbackConfigListener</listener-class>  
  7. </listener>

该监听器最好放置在spring的监听器前。

分享到:
评论

相关推荐

    Linux tomcat下catalina.out日志文件分割

    tomcat默认使用Java.util.logging记录日志,默认只记录tomcat的日志,不记录应用的日志。tomcat支持采用log4j进行日志记录,配置方法如下: 1.更新最新的tomcat_juli.jar包到./bin/目录下; 2.拷贝log4j.jar,lo4j....

    tomcat9.0源码

    - `Cluster`:集群支持,允许在多个Tomcat实例间共享会话和其他数据。 - `Connector`:负责接收和响应HTTP请求,有不同的实现,如 Coyote Connector 支持Java NIO和 APR。 3. **Servlet容器**: Tomcat作为一个...

    apache-tomcat-9.0.37-logback.zip

    【标题】"apache-tomcat-9.0.37-logback.zip" 是一个包含Apache Tomcat 9.0.37版本与Logback日志框架集成的压缩包。这个文件可能是一个预配置的服务器环境,专为方便开发人员进行Java web应用的部署和调试而设计。 ...

    java代码实例-日志规范史上最全java日志攻略(附教程)

    logback记录tomcat的访问日志" log4j2 "log4j2的日志框架 log4j2的配置 异步日志的使用" spring整合log "依赖的选择 日志的配置文件" SpringBoot日志 "SpringBoot日志 中间转换包统一日志框架 SpringBoot修改日志的...

    logback+web项目Demo

    在提供的"Logback+web项目Demo"中,你可以看到如何将Logback集成到一个Web应用程序中,并进行日志输出。这个Demo应该包含了一个简单的Web应用,以及配置好的 `logback.xml` 文件。通过导入Eclipse,你可以直接运行和...

    Swagger 接口文档 接入springboot 的 教程及 logback-spring.xml输出不同级别的日志信息(附件).rar

    在`logback-spring.xml`中,你可以定义不同的日志级别(如TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF),并控制不同级别的日志输出到不同的目的地,如控制台、文件、数据库等。 例如,以下配置将INFO及以上级别...

    logback相关jar包和demo代码.zip

    通常,使用 Logback 时,我们会在代码中通过 SLF4J 的 `LoggerFactory` 获取 logger 实例,然后调用 `debug()`, `info()`, `warn()`, `error()` 等方法记录日志: ```java import org.slf4j.Logger; import org.slf...

    logback核心包

    `logback.xml`是Logback的配置中心,它定义了日志级别(TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF),Appender(控制日志输出的位置,如控制台、文件、数据库等),Layout(控制日志输出的格式),Filter(控制...

    logback 中文手册

    通过 SLF4J,开发者可以在不修改代码的情况下切换日志框架,提高了项目的可移植性。 **六、使用案例** 在实际应用中,开发者可以使用如下的 SLF4J 代码记录日志: ```java import org.slf4j.Logger; import org.slf...

    slf4j-1.6.1+logback-0.9.24

    而Logback则是SLF4J的一个推荐的日志实现,它由知名日志框架Log4j的创始人Ceki Gülcü所创建,提供了比Log4j更快的性能和更多的功能。 **SLF4J介绍** SLF4J的主要目标是为各种日志框架提供一个简单统一的接口,如...

    tomcat-juli.jar

    然而,需要注意的是,由于Juli的API相对较低级,对于不熟悉Java日志系统的开发者来说,可能需要花费更多的时间来理解和配置。因此,确保在实施前充分理解Juli的工作原理和Redis的使用方法,是成功集成的关键。

    Spring Boot 整合mybatis redis netty 缓存 logback

    - 配置logback.xml,设定日志级别、输出格式和目的地。 这样的项目示例对于学习和实践Spring Boot的高级集成以及微服务架构是非常有价值的。通过研究和理解这个项目,开发者可以提升自己在实际开发中的技能和经验。

    springboot-mybatis-druid-mongodb-logback-demo.zip

    本次我们将深入探讨如何在Spring Boot 2.0的基础上,集成Mybatis-Plus 3.1.0、MongoDB数据库、Druid数据源以及Logback日志系统,构建一个多数据源、全栈式的示例项目。 首先,Spring Boot 2.0作为核心框架,提供了...

    Tomcat性能调优

    4. **Nginx反向代理**:Nginx作为一个高性能的反向代理服务器,可以分发流量到多个Tomcat实例,实现负载均衡。通过Nginx的配置,可以进行高效的缓存策略,如开启HTTP压缩(`gzip on`)和缓存静态资源,减轻后端...

    tomcat配置.pdf

    - **Tomcat集群**:配置`Cluster`元素,实现多个Tomcat实例之间的 session 复制,提高可用性和容错性。 - **负载均衡**:结合反向代理服务器(如Nginx或Apache HTTP Server)实现请求的负载均衡。 以上内容涵盖了...

    Shell脚本切割tomcat的日志文件

    鉴于在调试logback和log4j的文件切割一直无法成功,随性用shell写个脚本用来切割tomcat下的日志文件(大家如果有在logback或log4j使用文件切割成功的话,可以留下使用方式,先谢谢了) 1:废话少说,直接贴上脚本: #...

    apache-tomcat-9.0.56.tar.gz

    10. **JMX监控**:通过Java Management Extensions (JMX) API,管理员可以远程监控和管理Tomcat实例,监控服务器性能和应用状态。 解压"apache-tomcat-9.0.56.tar.gz"后,你会得到一个名为"apache-tomcat-9.0.56"的...

    【面试资料】-(机构内训资料)Tomcat优化相关问题.zip

    3. **Web应用部署**:合理分发应用到多个Tomcat实例,使用负载均衡可以提高服务可用性。此外,减少应用启动时间和热部署策略也是优化重点。 4. **线程池设置**:调整线程池的大小和超时策略可以有效应对并发请求,...

    log4j的配置实例

    **日志框架Log4j详解及配置实例** Log4j是Apache组织开发的一款广泛应用于Java项目的日志...在Tomcat这样的Web服务器环境下,正确配置Log4j,可以有效收集和分析应用程序的运行日志,从而提高问题定位和调试的效率。

    base_springboot简单实例_源码

    6. **日志**:SpringBoot默认使用Logback或Log4j2作为日志系统,可以在配置文件中调整日志级别和输出格式。 7. **运行与测试**:项目应该包含一个简单的运行和测试脚本,演示如何启动应用并进行基本功能测试。 ...

Global site tag (gtag.js) - Google Analytics