
我开始怀疑程序升级的时候是不是有什么地方没考虑到tomcat logs日志分类,开始调程序,折腾几天没有结果,症状是单机支撑12.5万时候没有任何异常,内存使用1%左右,总cpu使用了5%左右tomcat logs日志分类,load 0.5,但是再增加0.1w用户server肯定崩溃,每次都是相同的表现,我知道在什么地方卡住了。throws 用于当程序判断发生异常时,用该语句抛出异常,或处理异常时再次抛出异常。forkjointask在执行的时候可能会抛出异常,但是我们没办法在主线程里直接捕获异常,所以forkjointask提供了iscompletedabnormally()方法来检查任务是否已经抛出异常或已经被取消了,并且可以通过forkjointask的getexception方法获取异常。
catalina.2016-07-05.txt //经常用到的文件之一,程序的输出,tomcat的日志输出等等
manager.2016-07-05.txt //估计是manager项目专有的
host-manager.2016-07-05.txt//估计是manager项目专有的
localhost_access_log.2016-10-01.txt //tomcat访问日志记录,需要配置
1.让所有文件都输出到同一个文件中
打开Tomcat目录conf\logging.properties,修改如下,所有日志输出到tomcat开头的文件中
1catalina.org.apache.juli.FileHandler.level = FINE
at org.apache.catalina.startup.hostconfig.deploydirectory(hostconfig.java:1041) at org.apache.catalina.startup.hostconfig.deploydirectories(hostconfig.java:964) at org.apache.catalina.startup.hostconfig.deployapps(hostconfig.java:502) at org.apache.catalina.startup.hostconfig.start(hostconfig.java:1277)。handlers = org.apache.juli.filehandler, java.util.logging.consolehandler 。at org.apache.catalina.core.containerbase.addchildinternal(containerbase.java:791) at org.apache.catalina.core.containerbase.addchild(containerbase.java:771) at org.apache.catalina.core.standardhost.addchild(standardhost.java:546)。

# 1catalina.org.apache.juli.FileHandler.prefix =catalina.
1catalina.org.apache.juli.FileHandler.prefix =tomcat.
2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
handlers = org.apache.juli.filehandler, java.util.logging.consolehandler 。org.apache.juli.filehandler.level = fine 。org.apache.juli.filehandler.directory = ${应用目录}/logs 。
3manager.org.apache.juli.FileHandler.level = FINE
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
# 3manager.org.apache.juli.FileHandler.prefix =manager.

3manager.org.apache.juli.FileHandler.prefix =tomcat.
4host-manager.org.apache.juli.FileHandler.level = FINE
at org.apache.catalina.startup.hostconfig.deploydirectory(hostconfig.java:1041) at org.apache.catalina.startup.hostconfig.deploydirectories(hostconfig.java:964) at org.apache.catalina.startup.hostconfig.deployapps(hostconfig.java:502) at org.apache.catalina.startup.hostconfig.start(hostconfig.java:1277)。handlers = org.apache.juli.filehandler, java.util.logging.consolehandler 。at org.apache.catalina.core.containerbase.addchildinternal(containerbase.java:791) at org.apache.catalina.core.containerbase.addchild(containerbase.java:771) at org.apache.catalina.core.standardhost.addchild(standardhost.java:546)。
# 4host-manager.org.apache.juli.FileHandler.prefix =host-manager.
handlers = org.apache.juli.filehandler, java.util.logging.consolehandler 。org.apache.juli.filehandler.level = fine 。org.apache.juli.filehandler.directory = ${应用目录}/logs 。
2.打开访问日志
默认 tomcat 不记录访问日志,如下方法可以使 tomcat 记录访问日志
打开tomcat安装目录下的conf/server.xml文件,(大约在69行处)将8080端口的
把以下的注释 () 去掉即可。

上面的pattern可以修改格式
该项值可以为: common 与 combined ,这两个预先设置好的格式对应的日志输出内容如下:
common 的值: %h %l %u %t %r %s %b
logformat '%h %l %u %t \'%r\' %>s %b \'%{referer}i\'\'%{user-agent}i\'' combined。logformat “%h %l %u %t /”%r/” %>s %b /”%{referer}i/” /”%{user-agent}i/”" combined。logformat '%h %l %u %t '%r' %>s %b '%{referer}i''%{user-agent}i'' combined。
pattern 也可以根据需要自由组合, 例如 pattern="%h %l"
对于各fields字段的含义请参照 :
中的 Access Log Valve 项
3.修改tomcat日志级别
Tomcat 日志分为下面5类:

catalina 、 localhost 、 manager 、 admin 、 host-manager
每类日志的级别分为如下 7 种:
SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)
日志级别的设定方法
修改 conf/logging.properties 中的内容,设定某类日志的级别
示例:
设置 catalina 日志的级别为: FINE
1catalina.org.apache.juli.FileHandler.level = FINE
禁用 catalina 日志的输出:
1catalina.org.apache.juli.FileHandler.level = OFF
输出 catalina 所有的日志消息均输出:
1catalina.org.apache.juli.FileHandler.level = ALL
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-110052-1.html
好好的过日子