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

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

$CATALINA_HOME/logs/catalina.out 

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

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

1.方式一

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

2.方式二

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

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

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

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?