tomcat7怎么输出java异常日志

Python023

tomcat7怎么输出java异常日志,第1张

1.找到tomcat安装目录下的bin目录。

2.修改bin目录下面的catalina.bat文件,对照这个文件,将最后一部分修改成下面这样。

rem Execute Java with the applicable properties

if not "%JPDA%" == "" goto doJpda

if not "%SECURITY_POLICY_FILE%" == "" goto doSecurity

%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% >%CATALINA_BASE%\logs\catalina.out

goto end

:doSecurity

%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% >%CATALINA_BASE%\logs\catalina.out

goto end

:doJpda

if not "%SECURITY_POLICY_FILE%" == "" goto doSecurityJpda

%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %JPDA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% >%CATALINA_BASE%\logs\catalina.out

goto end

:doSecurityJpda

%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %JPDA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION% >%CATALINA_BASE%\logs\catalina.out

goto end

:end

3.将startup.bat中倒数第二行 call "%EXECUTABLE%" start %CMD_LINE_ARGS%?? 改为? call "%EXECUTABLE%" run %CMD_LINE_ARGS%

注:以上加粗的是指定输出路径。路径前面的“ >”代表的是输出是对当前文件的内容进行覆盖,也就是如果自己指定的catalina.out文件中有内容,将会被覆盖。如果使用“ >>”, 则不会覆盖,而是在catalina.out文件尾部追加信息。

日志主要是用来定位服务异常信息,异常信息有自定义,也有框架抛出来的!

一般为了保证服务能正常的运行,如出现某些异常不挂则会进行人为的异常捕获!这些异常可以包括SQL、NULL、I/O等等异常,所以一般来说异常都是人为根据系统需求来设定的,但一般来说,异常一般都要抛出来,