<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="access_log" suffix=".log" renameOnRotate="true" pattern="%{X-Forwarded-For}i^%{User-Agent}i^%A^%H^%m^%p^%U%q^%s^%{yyyy-MM-dd HH:mm:ss}t^%v^%T^%{postdata}r" />
对于各个属性做一下解释说明:
className — 节点名称
directory — 存储日志的目录
prefix — 日志的前缀
suffix — 日志的后缀
renameOnRotate — 是否按天切割日志。切割后的日志要按yyyyMMdd重命名
pattern - 日志模板,这里对于每个参数说一下详细描述,参数以^进行分割
%{X-Forwarded-For}i — 客户端IP
%{User-Agent}i — 客户端浏览器
%A — 服务器端内网IP
%H — 请求的http协议版本
%m — 请求方式 Get/Post/Delete/.....
%p — 请求的端口
%U%q — 请求的地址加参数,例如 /api/api.jsp?author=harklee
%s — http状态码,例如200,404等
%{yyyy-MM-dd HH:mm:ss}t — 服务器端时间
%v — 服务器端外网IP
%T — 服务器端接口响应时间,单位为S
%{postdata}r — post数据,该数据由服务器存储至Attribute,例如:
request.setAttribute("postdata", "harklee");