TOMCAT环境搭建

tomcat环境搭建较为简单,下载tomcat后,将war包放在webapps的路径下,运行bin里的脚本即可,这里介绍一下在搭建中遇到的问题。

1.乱码

tomcat最头痛的是乱码,如果是在window平台下搭建,应注意两点。
- conf/server.xml文件中需要在Connector标签添加 URIEncoding=”utf-8” 属性
-bin/catalina.bat文件中需要添加JAVA_OPTS=”-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8”属性,Dfile代表上传文件使用UTF8格式,sun.jnu代表输出log等用utf8.

2.log处理

tomcat默认使用的commons-logging-1.0.jar作为log输出工具,相应的配置文件为logging.properties。通常我们会采用更为灵活的log4j替代。替代可以选择指定项目或者在tomcat环境下进行替代。

2.1指定项目替代

下载log4j.jar,这里我选择的是log4j-1.2.17.jar版本,保存在./webapps/cepm360/WEB-INF/lib/log4j-1.2.17.jar路径下,log4j.properties文件在./webapps/cepm360/WEB-INF/web.xml中指定这里写图片描述

2.2在tomcat环境下替代

可以参考百度经验中的方法 http://jingyan.baidu.com/article/5d6edee20f37e599eadeec3a.html?st=2&os=0&bd_page_type=1&net_type=1
即使采用log4j方式对log文件进行分割,也不一定能达到要求,这里介绍些在linux下常用的命令用来处理log文件:

1 iconv

该命令主要用于编码转换,如
iconv -f gbk -t utf-8 cepm360.log_2017-02-08.log.2
将cepm360文件编码由gbk转换为utf-8

2 split

split -b 10m cepm360.log_2017-02-08.log.2
将cepm360文件按照10m大小进行分割

3 tail

对于需要实时观察指定文件时
tail -f cepm360
可以对文件做过滤
tail -f cepm360 | grep –line-buffer -a “请求参数|返回结果” | grep –line-buffer -va “返回结果.*is_process.*is_push|请求参数.*getALLMessage”
上述命令意思为筛选出包含请求参数和返回结果的行同时不包含返回结果.*is_process.*is_push和请求参数.*getALLMessage的行,-a表示忽略二进制文件。
如果输出文件的格式按日期划分,格式为cepm360.2016-02-23.log,则可以进一步智能化:
day=`date -d today +”%Y-%m-%d”`
file=./logs/localhost.$day.log

tail -f $file

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章