Tomcat日志
- 日志的作用
- Tomcat运行情况获知。tomcat在没有访问时是不知道运行错误的,日志的好处就是把当前的运行状况记录下来。
- 调试利器,线上系统都会开启日志。
- Tomcat日志分类
- 系统运行日志。运行信息与状态,运行时的错误、异常等。
- 访问日志,记录请求访问。
- 应用日志,用户自己写应用程序写的日志。
访问日志的配置
默认的访问日志配置在server.xml中,Host节点下的Valve节点。
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
分别解释一下其中的属性的作用:
- directory:日志文件的目录。
- prefix:访问日志的日志文件的前缀。
- suffix:访问日志的日志文件的后缀。
- pattern:日志的输出格式 。
- %h,远程主机名。
- %l(小写的L),远程逻辑从identd的用户名(总是返回’ - ‘)。
- %u,远程用户身份验证。
- %U,请求的URL路径。
- %r,表示请求行的内容 。
- %s,表示HTTP响应码。
- %t,日志写入时间。
- %m,请求方法。
- %a,表示客户端IP地址。
- ",表示双引号。
- %b,表示服务端下发的字节数。
- User-Agent:%{User_agent}i 可以知道服务器被哪些客户端访问
- fileDateFormat,用做日志滚动,与rotatable=”true”配合使用,定义了时间戳的格式,默认的就是”yyyy-MM-dd.”,可以改成”yyyy-MM-dd.HH.”,使得日志的滚动周期更短。
- rotatable,表示日志切割(不然日志文件过大,查看检索会慢),切割是按照fileDateFormat日志滚动来进行切割,如果fileDateFormat=”yyyy-MM-dd.”,就会每天进行切割,默认是true。
Tomcat手动部署
- CMD或Terminal进入项目的根目录,cd Restaurant
- 执行jar -cvf Restaurant.war ./
- 在Restaurant目录下生成了Restaurant.war文件
- 把文件移动到webapps目录下,并删除原来的Restaurant目录
- 启动Tomcat服务器,访问程序发送请求
- 程序正常执行,并生成Restaurant目录
Tomcat更多的内容可以查看Tomcat的官方文档,The Valve Component。