入门索引
resin作为一款application server,对jsp与servlet提供了良好的支持,自身采接用的java开发,与tomcat相比,各有优劣(resin vs tomcat).对日志支持,resin旗下有自己的一个log系统,与log4j相比有过之无不及
初始环境搭建
环境搭建(参照中的hessianhessian的debug日志),resin版本4.0.52,jdk1.7,使用eclipse插件开发.
环境搭建完成,进行测试,log日志的配置大体区分显式与隐士,显示诸如log4j中的运用api显示调用,还有像resin这种通过配置隐式设置(这种区分只是方便自己理解)
初始log案例
web环境采用原始的servlet.新建web项目(空的web.xml)
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>stu</groupId>
<artifactId>stu</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>resin</artifactId>
<packaging>war</packaging>
<dependencies>
<!--servlet-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
<!--客户端测试-->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.3</version>
</dependency>
</dependencies>
</project>
servlet使用注解,故需要javax.servlet,使用postman测试,httpclient可注释掉
servlet
package log;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/log.do")
public class LogTestServlet extends HttpServlet{
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("call get");
resp.getWriter().write("hello");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("call post");
doGet(req, resp);
}
}
get访问http://localhost:8080/resin/log.do
默认打印,控制台
[17-08-08 20:19:01.148] {resin-16} WebApp[production/webapp/default/resin] active
log/access.log日志记录
0:0:0:0:0:0:0:1 - - [08/Aug/2017:20:19:01 +0800] "GET /resin/log.do HTTP/1.1" 200 5 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36"
结果解释
access.log的内容在conf/cluster-default.xml配置
<access-log path="log/access.log"
format='%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"'
rollover-period&