一、服務器打印日志
要關閉hibernate的日志,首先要把hibernate.show_sql設置為false;然后設置log4j.properties。
# Control logging for other open source packages
log4j.logger.com.opensymphony.oscache=ERROR
log4j.logger.net.sf.navigator=ERROR
log4j.logger.net.sf.acegisecurity=WARN
log4j.logger.net.sf.acegisecurity.intercept.event.LoggerListener=WARN
log4j.logger.org.apache.commons=ERROR
log4j.logger.org.apache.struts=WARN
log4j.logger.org.displaytag=ERROR
log4j.logger.org.springframework=WARN
log4j.logger.com.ibatis.db=WARN
log4j.logger.org.apache.velocity=WARN
# Don't show debug logs for WebTest
log4j.logger.com.canoo.webtest=WARN
# All hibernate log output of "info" level or higher goes to stdout.
# For more verbose logging, change the "info" to "debug" on the last line.
log4j.logger.org.hibernate.ps.PreparedStatementCache=WARN
log4j.logger.org.hibernate=WARN
# Changing the log level to DEBUG will result in Hibernate generated
# SQL to be logged.
log4j.logger.org.hibernate.SQL=ERROR
# Changing the log level to DEBUG will result in the PreparedStatement
# bound variable values to be logged.
log4j.logger.org.hibernate.type=ERROR
二、tomcat的localhost_access_log日志文件
tomcat的logs目錄下除了有catalina.out日志文件外,還有個localhost_access_log.yyyy-MM-dd.txt的日志文件。生成這個文件的配置在tomcat的安裝目錄conf文件夾下server.xml里配置。


這個日志文件可記錄所有http的get,post訪問日志。比如我要查詢某個index.action某天是否訪問過我這個tomcat,可以執行如下命令:grep “index.action” localhost_access_log.2015-03-23.txt。輸出如下:
192.168.10.51 – – [23/Mar/2015:17:27:28 +0800] “GET /finance/index.action?0.8436781843192875 HTTP/1.0” 200 2 0.011
192.168.10.51 – – [23/Mar/2015:17:27:58 +0800] “GET /index.action?0.9197160941548645 HTTP/1.0” 200 2 0.013
如果訪問過那么相應的ip地址,訪問時間,請求方式(get,post),請求action名稱…..都會輸出來。這樣有利於我們排查一些問題,還可以采集、存儲、分析日志數據得到有價值的東西。
