欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

如何查看tomcat的控制台输出的方法 有大用

在web项目调试期间,时常需要查看输出的调试信息,例如当Hibernate设置为显示SQL语句时,每次运行的SQL语句会输出到终端,另外有时需要在代码中插入一些输出语句,以方便掌握运行情况,但当插入System.out.println(....)这样的控制台输出语句时,在终端是不能直接看到的。

在tomcat中,默认将终端输出信息输出到

1
$CATALINA_HOME/logs/catalina.out

其中$CATALINA_HOME是tomcat的安装目录。

tomcat启动后,该文件每秒都会更新一次,并且像其中输入日志信息,所以如果用直接打开的方式查看文件内容,由于文件在不断刷新,往往难以实现。我们希望查看到动态的日志内容,有两种方式:

1.方式一

进入tomcat安装路径的bin目录中,运行sh catalina.sh run命令,将在终端动态显示catalina.out的内容

2.方式二

进入上述的安装目录下的logs目录中,执行如下命令

1
tail -f catalina.out

Tomcat控制台日志输出到文件的方法

startup.bat中修改

call "%EXECUTABLE%" start %CMD_LINE_ARGS%


call "%EXECUTABLE%" run %CMD_LINE_ARGS%  (>> ..\logs\detailLog.%DATE:~0,10%.log ) 

这样控制台就不会输出日志文件了,让catalina.bat去决定日志输出在哪里吧

在catalina.bat中寻找以%ACTION%结尾的四处,每处%ACTION%后面添加  >> ..\logs\detailLog.%DATE:~0,10%.log 

detailLog是我自己起的名字,大家可以随意更改,但是注意不要与默认日志文件冲突,否则启动会报个错。那%DATE:~0,10%是用来截取系统时间的(这里应该注意系统生成的时间格式问题,如果是2013/04/02则会出错,请确保系统时间格式)。在我的服务器上echo %DATE%,显示出的是“2013-04-02 星期二”,截取0-10位,也就是“2013-04-02”,所以今天产生的log文件名字应该是 detailLog.2013-04-02.log

这样再去双击startup.bat,就会发现控制台启动后不再输出日志文件。再去查看detailLog.2013-04-02.log,会发现日志都在里面。那下面的工作,就是如何简单的将日志文件显示出来了。

更改系统日期格式在

桌面右下角日期和时间设置---更改日历设置-----日期选项卡下的日期格式下的短日期下拉选择框修改

下载UnxUtils   https://sourceforge.net/projects/unxutils/

解压  把UnxUtils\usr\local\wbin加到系统环境变量Path

打开cmd,输入tail --help

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。


来自 https://www.jb51.net/article/136573.htm


普通分类: