Tomcat下部署两个war包项目 使用Log4j 接管 catalina.out 日志文件生成方式 20C

我在一个tomcat里面部署了两个web项目 启动成功也能跑起来 一切OK ,但是log4j日志总是
在一个文件里打印 ,它不按天或者小时打印,这就出现一个问题 ,如果文件过大,工具是打不开的
,查找bug也很困难,所以请求大神们怎样可以让他按天打印,log4j配置文件应该怎样配置,
网上有很多是起动一个项目的配置,没有两个的.
跪求详细的教程

4个回答

这是在小黑窗里运行的,是直接拿tomcat起动的

由于tomcat catalina.out日志不会自动分割,

一、日志分割所需包在附近中

1、 压缩包中有三个jar包:

log4j-1.2.16.jar 

tomcat-juli-adapters.jar

tomcat-juli.jar

说明:如果不是tomcat7版本,请去官网下载对应版本的tomcat-juli.jar,tomcat-juli-adapters.jar类包,

     下载地址: http://www.apache.org/dist/tomcat   在对应版本中的bin/extras 路径下

二、修改相关配置文件

1、 修改${catalina.home}/conf/context.xml

修改:为只有这样才能完全的把tomcat的stdout给接管过来。

2、 复制log4j-1.2.16.jar和tomcat-juli-adapters.jar 到tomcat的lib下

3、 复制tomcat-juli.jar到${catalina.home}/bin下,在该目录会存在该文件,覆盖即可

4、 建立log4j.properties,并把其放到到tomcat的/lib下

Log4j.properties的内容如下:相关参数根据需要可以相应修改

log4j.rootLogger=INFO, CATALINA

Define all the appenders

log4j.appender.CATALINA=org.apache.log4j.DailyRollingFileAppender

log4j.appender.CATALINA.File=/home/richmail/logs/tomcat/catalina.log

log4j.appender.CATALINA.Append=true

log4j.appender.CATALINA.Encoding=UTF-8

Roll-over the log once per day

log4j.appender.CATALINA.DatePattern='.'yyyy-MM-dd

log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout

log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

log4j.appender.LOCALHOST=org.apache.log4j.DailyRollingFileAppender

log4j.appender.LOCALHOST.File=/home/richmail/logs/tomcat/localhost.log

log4j.appender.LOCALHOST.Append=true

log4j.appender.LOCALHOST.Encoding=UTF-8

log4j.appender.LOCALHOST.DatePattern='.'yyyy-MM-dd

log4j.appender.LOCALHOST.layout = org.apache.log4j.PatternLayout

log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

log4j.appender.MANAGER=org.apache.log4j.DailyRollingFileAppender

log4j.appender.MANAGER.File=/home/richmail/logs/tomcat/manager.log

log4j.appender.MANAGER.Append=true

log4j.appender.MANAGER.Encoding=UTF-8

log4j.appender.MANAGER.DatePattern='.'yyyy-MM-dd

log4j.appender.MANAGER.layout = org.apache.log4j.PatternLayout

log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

log4j.appender.HOST-MANAGER=org.apache.log4j.DailyRollingFileAppender

log4j.appender.HOST-MANAGER.File=/home/richmail/logs/tomcat/host-manager.log

log4j.appender.HOST-MANAGER.Append=true

log4j.appender.HOST-MANAGER.Encoding=UTF-8

log4j.appender.HOST-MANAGER.DatePattern='.'yyyy-MM-dd

log4j.appender.HOST-MANAGER.layout = org.apache.log4j.PatternLayout

log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender

log4j.appender.CONSOLE.Encoding=UTF-8

log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout

log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

Configure which loggers log to which appenders

log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=INFO, LOCALHOST

log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager]=\

INFO, MANAGER

log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager]=\

INFO, HOST-MANAGER

  1. 修改bin/catalina.sh

    a. 屏蔽或删除如下内容:

    (1) if [ -z "$CATALINA_OUT" ] ; then

          CATALINA_OUT=$CATALINA_BASE/logs/catalina.out
    
        fi
    

    (2) touch "$CATALINA_OUT"

    (3) >> "$CATALINA_OUT" 2>&1 "&" (两处)

    b. 修改org.apache.catalina.startup.Bootstrap "$@" start \ 内容 (两处)

    修改为:org.apache.catalina.startup.Bootstrap "$@" start & \

  2. 修改conf/server.xml中localhost_access_log日志路径

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/home/richmail/logs/tomcat "

           prefix="localhost_access_log." suffix=".txt"

           pattern="%h %l %u %t &quot;%r&quot; %s %b" />
  1. 删除 conf/logging.properties 文件

  2. 启动tomcat。

caoweichen520
caoweichen520 这是配置一个项目的,这个我配过了但是起动不起来 我的tomcat部署了两个项目
一年多之前 回复

log file

log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File =../logs/IvaDubboWeb-info.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = INFO
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = [%p] [%-d{yyyy-MM-dd HH:mm:ss}] %C.%M(%L) | %m%n

两个war里的log4j,单独配置一下

caoweichen520
caoweichen520 怎么配置啊
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式
NULL 博文链接:https://pengfeifei26.iteye.com/blog/2244328
Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式,解决catalina.out日志文件过大问题...
  1. 准备jar包:     log4j-1.2.17.jar (从 http://www.apache.org/dist/logging/log4j/1.2.17/ 下载)     tomcat-juli.jar, tomcat-juli-adapters.jar (从 http://www.apache.org/dist/tomcat/tomcat-7/v7.0.52/bin...
Tomcat下使用Log4j接管生成日志文件
Tomcat下使用Log4j接管生成日志文件,附件含配置说明以及所需要的jar包
Tomcat项目war包部署
spring boot 只支持tomcat 8.5 以上版本 (如果类上加了虚拟路径,可以单独用一个类来作为打开首页的请求,在类上不加请求)     打开域名加载的首页请求,必须是 / 2、idea中打包(Maven项目) tomcat配置   将war包复制到tomcat的D:\apache-tomcat-8.5.34-windows-x64\apache-tomcat-8....
tomcat下用Log4j 按文件大小,生成catalina.out日志文件
tomcat下用Log4j 按文件大小,生成catalina.out日志文件
使用log4j接管tomcat日志
tomcat
切割tomcat的catalina.out的日志文件
tomcat的catalina.out的日志文件过大,用来切割日志文件用的xshell脚步。
分割tomcat日志文件catalina.out
Tomcat默认安装后,catalina.out文件会随着时间的增长,越积越多,很容易到达几个G,不仅读写影响性能,给我们查询日志也带来很大的不便,需要使用一些方式分割catalina.out。 1.安装cronolog# Ubuntu推荐安装 apt-get install cronolog# CentOS推荐安装 yum install cronolog# 查看是否安装完成 which cron
tomcat使用war包部署
前提 准备打包好的war包 1、war包存放在tomcat/webapps 目录下 2、进入tomcat/bin目录 启动startup.bat。显示成功 3、再进入tomcat/webapps目录下。会多一个项目。此项目就是war部署的 4、浏览器输入地址:http://localhost:8080/testmaven/ 可正常访问,即部署完成 ...
tomcat本地部署war包的方式
一、本地构建生成war包       在本地项目中的terminal下,使用命令 “mvn clean install”或 先执行“mvn clean”再执行“mvn install”,将本地项目中的target目录清除,重新生成新的目录及war包,       比如此处我生成的war包的名称是 “yao.demos.war”。 二、本地tomcat部署war包 首先,自己设定
Gradle生成WAR包及部署Tomcat
Gradle生成WAR包及部署Tomcat配置构建脚本
使用cronolog工具切分Tomcat的catalina.out日志文件
cronolog一个对日志切分的小工具,其主页在http://cronolog.org/,我们也可以用它来切分Apache的日志。   1.下载cronolog-1.6.2.tar.gz 2.安装 # tar zxvf cronolog-1.6.2.tar.gz# cronolog-1.6.2/configure# make# make install 搞定! 默认是安装在/usr...
Linux下切分Tomcat的catalina.out日志文件
atalina.out文件会越来越大,虽然Tomcat每日会生成一个catalina.ymd.log的文件,但catalina.out主文件仍然不断增加,需要对catalina.out按日切分才好,在网上找了一下,看到一篇《rotating catalina.out in tomcat 5.5 using cronolog》,就用公司的Tomcat配置一下。 cronolog工具已经在服务器上装...
使用log4j切分tomcat的catalina.out输出文件
最近要做一个负载均衡服务器,后端使用tomcat作为应用服务器,主要需要解决tomcat输出日志过大的问题,想来想去,利用log4j来切分日志。主要工作有以下: 使用log4j切分日志,需要下载相应的tomcat的jar包支持,我使用的tomcat7的版本,对应jar包可以去http://download.csdn.net/detail/u011322089/9748955这里下载。总共三个ja
我使用LOG4J生成日志文件
我使用LOG4J生成日志文件 rn配置如下 rnlog4j.rootCategory=INFO,file rnlog4j.appender.file=org.apache.log4j.DailyRollingFileAppender rnlog4j.appender.file.layout.ConversionPattern=%dMM-dd HH:mm:ss.SSS %-4r %-5p [%t] %37c %3x - %m%n rnlog4j.appender.file.File=D:\\tomcat5.5\\webapps\\lbs\\log.txt rnlog4j.appender.file.DatePattern='.'yyyy-MM-dd rnlog4j.appender.file.Append=false rnlog4j.appender.file.Threshold=INFO rnlog4j.appender.file.layout=org.apache.log4j.PatternLayout rnlog4j.appender.file.layout.ConversionPattern=%dMM-dd HH:mm:ss.SSS %-4r %-5p [%t] %37c %3x - %m%n rnrn本来想实现自动生成每天的日志 在本地是通过了 放到服务器上的时候 就会是今天把昨天的日志覆盖 无法在后面添加日期 rnrn 请对这个使用比较了解的人帮忙下 谢谢!!n[b]问题补充:[/b]n我使用LOG4J生成日志文件 rn配置如下 rnlog4j.rootCategory=INFO,file rnlog4j.appender.file=org.apache.log4j.DailyRollingFileAppender rnlog4j.appender.file.layout.ConversionPattern=%dMM-dd HH:mm:ss.SSS %-4r %-5p [%t] %37c %3x - %m%n rnlog4j.appender.file.File=D:\\tomcat5.5\\webapps\\lbs\\log.txt rnlog4j.appender.file.DatePattern='.'yyyy-MM-dd rnlog4j.appender.file.Append=false rnlog4j.appender.file.Threshold=INFO rnlog4j.appender.file.layout=org.apache.log4j.PatternLayout rnlog4j.appender.file.layout.ConversionPattern=%dMM-dd HH:mm:ss.SSS %-4r %-5p [%t] %37c %3x - %m%n rnrn本来想实现自动生成每天的日志 在本地是通过了 放到服务器上的时候 就会是今天把昨天的日志覆盖 无法在后面添加日期 rnrn 请对这个使用比较了解的人帮忙下 谢谢!!rnrn最开始这个是Append=true rnrn不可以 我才改为 Append=false 的
tomcat 的 catalina.out 日志文件,我发现如果不用log4j
的话!rn单纯catalina.out 的默认格式,它只记录一些输出信息啊,系统的启动信息啊,tomcat捕获的错误啊什么的信息!rn但是却不把这些信息的时间也写在日志文件里面啊.弄的都不知道,捕获的错误以啊,什么的,都是什么时候捕获的rn不知道在那里可以设置啊!希望得到大家的帮助啊!现在还没有解决啊!rn
使用Docker部署war包项目
使用Docker部署war,必须要用容器,我们就用tomcact容器,其实都是将war包丢到tomcat的webapps目录下,tomcat启动的情况下会自动解压war包。 一种是在Docker中安装tomcat容器的镜像,然后把war包丢到tomcat镜像下webapps中即可。但是如果tomcat关闭了,其webapps下的包就会消失;二就是利用挂载,还是安装t...
Log4j 4种日志文件生成方式
参考了某位兄弟的代码, 但是使用了之后,回过头来写博客忘记原地址,勿怪。 Log4j  4种日志文件生成方式 方式1 : 按天生成日志  org.apache.log4j.DailyRollingFileAppender (log4j.jar 自带) 方式2 : 按大小生成日志   org.apache.log4j.RollingFileAppender (log4j.jar  自带)
linux tomcat中的项目不能生成log4j的日志文件
部署在服务请中 tomcat webapp下的war文件(JAVA ee 项目)配置了log4j 刚开始的时候能够正常生成日志文件,后来日志文件却不能正常更新了 这样的话应该不是权限问题和路径问题 想了好久 想不通 后来发现是因为我偷懒   在远程登录服务器的时候 在根目录下直接使用命令 /usr/tomcat/apache-tomcat-8.0.39/bin/sta
log4j(一) 生成日志文件
log4j是开源的日志记录项目,我们不仅可以对输出的日志的格式自定义,还可以自己定义日志输出的目的地,比如:屏幕,文本文件,数据库等。本节主要讲述如何将日志信息打印到文件,并将不同的信息打印到不同的文件中。         用log4j将日志写入数据库主要用到是log4j包下的JDBCAppender类,它提供了将日志信息异步写入数据的功能,我们可以直接使用这个类将我们的日志信息写入数据库;
log4j日志文件生成
[code=&quot;java&quot;] 文件的名字不能用特殊符号:例如&quot;_&quot; ,否则无法生成日志文件 log4j.appender.file.File=../logs/platformProvider.log [/code]
log4j生成日志文件
#日志路径 log4j.appender.logfile.File=/home/moma/Documents/log/test.log log4j.appender.logfile.MaxFileSize=128MB log4j.appender.logfile.MaxBackupIndex=3 log4j.appender.logfile.layout=org.apache.log4j.Patte
java——log4j生成日志文件
1.配置文件生成日志文件。 properties配置: log4j.rootLogger = debug,stdout,file ### 输出到控制台 ###log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.std
Tomcat配置log4j生成日志文件
1 使用Tomcat的过程中总会遇到很多问题,如端口占用问题,项目存在错误等导致Tomcat打不开的问题,这个时候就可以通过查看日志的方式来查找错误的原因,帮助我们减少开发过程中解决错误的时间,在这里提供一种Tomcat配置log4j替代java.util.logging来生成日志文件的方式:   1.1   下载log4j.jar、tomcat-juli.jar和tomcat-juli-ada
Myeclipse使用log4j生成日志文件
日志文件在软件开发中非常重要,它可以帮助程序员记录程序运行过程中的一些信息,以便调试、分析。下面介绍在myeclipse中如何使用log4j生成日志文件。
Log4j 生成日志文件的问题。
服务器环境是 Linux Nginx+Tomcatrn 出现的问题在这 [url=http://topic.csdn.net/u/20110823/16/3771ae96-688d-4ecc-b7fc-32a378568f43.html] http://topic.csdn.net/u/20110823/16/3771ae96-688d-4ecc-b7fc-32a378568f43.html[/url]rn 存储日志文件的目录是共享的。也就是说每台服务器上(Tomcat,Nginx)都会生成日志文件。rnrnrn 请问下有过类似经验的,都是怎么配置或部署的?会不会出现这样的问题.rn
Log4j无法生成日志文件
JBX+tomcatrn在JBX里直接运行Logtest.java文件,没有错误提示,正常结束,可是没有生成日志文件,请高手指点,代码如下:rnLogtest.java:rnpackage program.BusinessManger;rnimport org.apache.commons.logging.Log;rnimport org.apache.commons.logging.LogFactory;rnpublic class Logtest rn public static void main(String[] args)rn Log log = LogFactory.getLog("test");rn log.info("info");rn log.error("error");rn rnrnlogtj.properties:rnlog4j.rootLogger=INFO,Rrnlog4j.appender.R=org.apache.log4j.FileAppenderrnlog4j.appender.R.File=C:\pro\log\allpro.logrnlog4j.appender.R.layout=org.apache.log4j.PatternLayoutrnlog4j.appender.R.layout.ConversionPattern=%dABSOLUTE %5p %c1:%L - %m%nrn
在docker下的tomcat容器中部署war包的两种方式
在docker下的tomcat容器中部署war包的两种方式 在tomcat镜像中部署javaweb项目 打包javaweb项目 像通常的javaweb项目部署一样,首先需要将javaweb项目打成war包,具体不再详述。 查看tomcat镜像启动的容器 docker ps   记录下tomcat镜像启动的容器的ID或容器名称。 方法一 ...
SpringBoot应用以war包方式部署到Tomcat
  最近,在用springboot开发一个小应用,springboot默认提供内嵌的tomcat,所以打包直接生成jar包,用java -jar命令就可以启动。但 是,有时候我们更希望一个tomcat来管理多个项目,这种情况下就需要项目是war格式的包而不是jar格式的包。接下来就开始吧!   我使用的jdk和tomcat版本: IDE: Eclipse Luna 4.4.0 JDK版...
Tomcat下使用war包发布项目
1、将war包复制到webapp下 2、在conf/server.xml 的host标签下新增  3、bin目录下 点击shutdown.sh 关闭tomcat,点击startup.sh重启tomcat
关于同时在Tomcat下部署两个war包
在Tomcat下分别单独部署两个项目时,是正常的,都可以访问到项目的主页,可是在同时部署这两个项目时,就只能访问一个项目的主页,另一个项目访问主页时报404错误,这是为什么呢?rn另外在启动Tomcat时也没有报错,访问的时候报错如下:rn[img=https://img-bbs.csdn.net/upload/201604/10/1460261899_477986.png][/img]rn这是为什么呀?
TOMCAT下怎样部署WAR包?
我将war包放在webapps下rn与ROOT同级rn我用rn这样tomcat启动不起来了rn删掉这个可以正常启动rn在conf/server.xml里怎么样配置啊?rn
如何将war包部署在tomcat下
一、准备工作 (1)下载tomcat到本地。 (2)项目 二、运行项目 (1)将myecipse中的项目打包 a 我的项目是交给maven管理的,所以直接右键项目run as,maven clean, b 然...
tomcat手动部署war包
Tomcat 的server.xml中配置war包实际路径(也可以打包到webapps目录下) 配置xml中的Context:<Context docBase="E:\repositories\helloworld\target\helloworld-1.0.0-SNAPSHOT" path="/" reloadable="true"/></Host>
war包部署到tomcat问题
我电脑之前是用jspStudy这个集成软件进行开发环境的搭建,然后领导让把项目改下IP及端口号打成war包然后部署到服务器上的tomcat上。rn1.在我电脑测试使用的是jspStudy中的tomcat部署的,没有问题,部署成功。rn2.服务器是有单独的tomcat和jspStudy,想用jspStudy启动MySQL和Apache,然后将war包部署到tomcat中。war放进去启动tomcat正常解压,但是就是在浏览器中输入localhost:9080/项目名称,报404,资源不可用;tomcat端口配置都是好的(我改成的9080),如果不放war包进去就是正常显示tomcat界面。rn不知道是哪边配置要弄,麻烦懂的人能帮帮忙,谢谢!
war包部署到tomcat(两种)
我介绍两种 1. 把生成的war包(target下面)放在tomcat的webapp下面。 之后去Apache的bin目录下start.bat 可以看到,Apache自动识别在webapp下的war文件,并部署上去了。 此时打开网页就可以访问。 第二种,使用manager页面添加 用这种方式要先配置角色。 文件路径: 添加内容: 之后登陆manager页面 先解发布ssm. 同样可以,服...
war包部署到tomcat
1. maven web app(比如应用名称为kindpy)打包成kindpy.war, 打包命令: mvv clean package -Dmaven.test.skip=true     说明:war是什么? 里面有什么东西?     a. web app 所有必需的文件都在target/kindpy目录下,我们称之为webroot,打包也就是将webroot打成.war后缀的压缩包
tomcat 部署多个war包项目和配置域名
[size=medium]1.首先就是项目打包war 首先使用DOS进入 项目的根目录 cd E:/XXX项目/ 2. 打包命令 jar cvf XXX项目.war */. (这里可以把lib下的jar全部打包 也可以把lib下的Jar放入 tomcat下) 3.好啦下面就是我们的部署了 3.1把项目war包 放入tomcat文件下 的D:\apache...
传统tomcat war包部署
传统的tomcat war包部署 Connector:接收请求,创建Request和Response对象用于和请求端交换数据,让Engine处理请求,返回响应 Engine:一个 Engine代表一个完整的 Servlet 引擎,它接收来自Connector的请求,并决定传给哪个Host来处理 Host:Engine可以包含多个Host,每个Host代表一个虚拟主机,处理不同域名的请求 C...
SpringBoot项目打成war包部署到Tomcat
修改pom.xml文件 添加Tomcat依赖包 &amp;amp;amp;lt;dependency&amp;amp;amp;gt; &amp;amp;amp;lt;groupId&amp;amp;amp;gt;org.springframework.boot&amp;amp;amp;lt;/groupId&amp;amp;amp;gt; &amp;amp;amp;lt;artifactId&amp;amp;amp;gt;spring-boot-s
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池

相似问题

5
Log4j2启动报错,ava.lang.NoSuchMethodError
4
log4j升级到log4j2出现的问题,找不到log4j配置文件
2
tomcat 不打印catalina.out日志
4
项目打成war包部署到tomcat,本地没问题,部署到服务器就报这个错,怎么解决啊
1
org.apache.catalina.startup.ContextConfig.beforeStart Exception fixing docBase for context [/demo]
2
SSH项目使用log4j管理日志怎样把SSH的jar包日志和其他jarDEBUG日志屏蔽?
3
eclipse中用tomcat部署maven项目,运行报错,求解决思路?
4
程序运行,不时出现tomcat假死的情况
1
在阿里云上部署java项目后,浏览器访问不了?
0
log4j:ERROR Could not instantiate class 报错
1
ssm开发过程中,tomcat启动失败,target\classes\spring-mvc.xml和spring-mybatis.xml报红
1
tomcat启动后,日志里报这个错/catalina.sh: line 440
1
Server Tomcat v9.0 Server at localhost failed to start.
4
tomcat项目报错,但是没找到具体错误,求大神指点。
5
eclipse中将项目在tomcat上运行,出现找不到类文件的错误
1
springboot使用log4j启动报错,去除重复包则报以下找不到log4j错误,不去重则报包重复错误,请指教
1
新发布了一个项目,在tomcat启动时报下面的错误,求解
2
SSM整合运行Tomcat报错org.springframework.beans.factory.BeanCreationException
1
exlipse上的项目在启动Tomcat时报错,有没有遇到过这种问题的,求帮助。
2
在windows环境下写的springboot的项目在linux的tomcat下运行报错