tomcat输出日志到文件和控制台
2017-02-21 10:32
661 查看
来源:http://blog.sina.com.cn/s/blog_a0e7e34c01016a44.html
在windows下tomcat的启动脚本默认不像unix下的脚本那样输出应用日志到logs/catalina.out,只在console中输出,如果日志刷的太快根本没法找到错误信息。
为了把日志输出到文件,需要修改以下脚本。
1)修改startup.bat,把脚本的倒数第二行:call
"%EXECUTABLE%" start %CMD_LINE_ARGS%
改为:call "%EXECUTABLE%" run %CMD_LINE_ARGS%
2)修改catalina.bat最后的一部分代码:
红色划线的部分是需要增加的代码:>> �TALINA_HOME%\logs\catalina.�te:~0,10%.out
其中的catalina.�te:~0,10%.out是为了分日期存放日志文件。在cmd下echo
�te%看看,
如:2011-04-19 星期二
发现从第一个字符开始,长度为10的子串正是2011-04-19。
这样在开发过程中每次双击startup.bat启动tomcat,脚本都会把应用日志保存到日期对应命名的日志文件中了。可是又带来一个新的问题,由于>>
�TALINA_HOME%\logs\catalina.�te:~0,10%.out 把输出都重定向到了文件中,console中就无法实时显示日志内容了,如何做到既把日志保存到磁盘文件中,又能在屏幕上实时监控日志呢?
想到unix下有tail
-f ,于是试着度娘了一下“dos tail”,还真找到了一个在dos下的tail命令,只是要先安装一个windows组件Windows
Server 2003 Resource Kit Tools。
如安装目录为“D:\Program Files\Windows Resource Kits\Tools”,把这个路径加入到PATH环境变量。
在cmd下tail
/? ,出现以下信息则说明安装成功了:
usage: TAIL [switches] [filename]*
switches: [-?] display this message
[-n]
display last n lines of each file (default 10)
[-f
filename] keep checking filename for new lines
在tomcat主目录的bin下新建一个bat脚本taillog.bat,内容为:
if not exist "�TALINA_HOME%\logs\catalina.�te:~0,10%.out" echo "" > �TALINA_HOME%\logs\catalina.�te:~0,10%.out
tail -f �TALINA_HOME%\logs\catalina.�te:~0,4%-�te:~5,2%-�te:~8,2%.out
最后在catalina.bat中调用这个脚本:
这样就会弹出一个新的窗体,将"�TALINA_HOME%\logs\catalina.�te:~0,10%.out"中的日志显示出来,如下图:
在windows下tomcat的启动脚本默认不像unix下的脚本那样输出应用日志到logs/catalina.out,只在console中输出,如果日志刷的太快根本没法找到错误信息。
为了把日志输出到文件,需要修改以下脚本。
1)修改startup.bat,把脚本的倒数第二行:call
"%EXECUTABLE%" start %CMD_LINE_ARGS%
改为:call "%EXECUTABLE%" run %CMD_LINE_ARGS%
2)修改catalina.bat最后的一部分代码:
红色划线的部分是需要增加的代码:>> �TALINA_HOME%\logs\catalina.�te:~0,10%.out
其中的catalina.�te:~0,10%.out是为了分日期存放日志文件。在cmd下echo
�te%看看,
如:2011-04-19 星期二
发现从第一个字符开始,长度为10的子串正是2011-04-19。
这样在开发过程中每次双击startup.bat启动tomcat,脚本都会把应用日志保存到日期对应命名的日志文件中了。可是又带来一个新的问题,由于>>
�TALINA_HOME%\logs\catalina.�te:~0,10%.out 把输出都重定向到了文件中,console中就无法实时显示日志内容了,如何做到既把日志保存到磁盘文件中,又能在屏幕上实时监控日志呢?
想到unix下有tail
-f ,于是试着度娘了一下“dos tail”,还真找到了一个在dos下的tail命令,只是要先安装一个windows组件Windows
Server 2003 Resource Kit Tools。
如安装目录为“D:\Program Files\Windows Resource Kits\Tools”,把这个路径加入到PATH环境变量。
在cmd下tail
/? ,出现以下信息则说明安装成功了:
usage: TAIL [switches] [filename]*
switches: [-?] display this message
[-n]
display last n lines of each file (default 10)
[-f
filename] keep checking filename for new lines
在tomcat主目录的bin下新建一个bat脚本taillog.bat,内容为:
if not exist "�TALINA_HOME%\logs\catalina.�te:~0,10%.out" echo "" > �TALINA_HOME%\logs\catalina.�te:~0,10%.out
tail -f �TALINA_HOME%\logs\catalina.�te:~0,4%-�te:~5,2%-�te:~8,2%.out
最后在catalina.bat中调用这个脚本:
这样就会弹出一个新的窗体,将"�TALINA_HOME%\logs\catalina.�te:~0,10%.out"中的日志显示出来,如下图:
相关文章推荐
- tomcat配置log4j输出日志从控制台改到指定文件
- TOMCAT 控制台信息输出到日志文件
- TOMCAT控制台日志输出到指定文件中
- 如何将tomcat控制台输出的内容直播用日志文件保存起来
- TOMCAT控制台日志输出到指定文件中
- Tomcat控制台和输出日志文件中文乱码
- TOMCAT控制台日志(startup.bat)输出到指定文件中
- tomcat 控制台日志输出到文件
- windows下tomcat输出控制台日志文件
- windows下的tomcat的日志只输出在控制台下,没有输出到日志文件中(linux下的tomcat的日志默认输出在logs文件下的catalina.out文件中)。
- Tomcat控制台日志输出到指定文件中
- TOMCAT控制台日志输出到指定文件中
- 把eclipse环境下tomcat服务器控制台输出转储到特定日志文件
- 如何将tomcat控制台输出的内容直播用日志文件保存起来
- 配置tomcat将控制台日志输出到指定文件
- 将Tomcat的控制台日志信息按时间(天)输出文件中
- windows下tomcat把控制台日志输出到文件中
- 如何将tomcat控制台输出的内容直播用日志文件保存起来(Log4j)
- tomcat修改控制台日志输出到文件的解决办法__http://wenku.baidu.com/link?url=inKWTkePOVaNcN9o07BGiiOgHaQefnUAhXfj9Bmn-BX
- 保存tomcat输出的日志到制定文件