文档章节

Windows 环境 tomcat日志配置

神手-追魂
 神手-追魂
发布于 2017/07/25 16:00
字数 1349
阅读 7
收藏 0

tomcat每次启动时,自动在logs目录下生产以下日志文件,按照日期自动备份

 

  localhost.2016-07-05.txt   //经常用到的文件之一 ,程序异常没有被捕获的时候抛出的地方

  catalina.2016-07-05.txt  //经常用到的文件之一,程序的输出,tomcat的日志输出等等

  manager.2016-07-05.txt //估计是manager项目专有的

  host-manager.2016-07-05.txt//估计是manager项目专有的

  localhost_access_log.2016-10-01.txt //tomcat访问日志记录,需要配置

1.让所有文件都输出到同一个文件中

 打开Tomcat目录conf\logging.properties,修改如下,所有日志输出到tomcat开头的文件中

1catalina.org.apache.juli.FileHandler.level = FINE

1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

# 1catalina.org.apache.juli.FileHandler.prefix = catalina.

1catalina.org.apache.juli.FileHandler.prefix = tomcat.

 

2localhost.org.apache.juli.FileHandler.level = FINE

2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

# 2localhost.org.apache.juli.FileHandler.prefix = localhost.

2localhost.org.apache.juli.FileHandler.prefix = tomcat.

 

3manager.org.apache.juli.FileHandler.level = FINE

3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

# 3manager.org.apache.juli.FileHandler.prefix = manager.

3manager.org.apache.juli.FileHandler.prefix = tomcat.

 

4host-manager.org.apache.juli.FileHandler.level = FINE

4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

# 4host-manager.org.apache.juli.FileHandler.prefix = host-manager.

4host-manager.org.apache.juli.FileHandler.prefix = tomcat.

2.打开访问日志

默认 tomcat 不记录访问日志,如下方法可以使 tomcat 记录访问日志

编辑 ${catalina}/conf/server.xml 文件. 注 :${catalina} 是 tomcat 的安装目录

把以下的注释 (<!-- -->) 去掉即可。

 <!--

        <Valve className="org.apache.catalina.valves.AccessLogValve"

         directory="logs"  prefix="localhost_access_log." suffix=".txt"

         pattern="common" resolveHosts="false"/>

  -->

上面的pattern可以修改格式

该项值可以为: common 与 combined ,这两个预先设置好的格式对应的日志输出内容如下:

common 的值: %h %l %u %t %r %s %b

combined 的值: %h %l %u %t %r %s %b %{Referer}i %{User-Agent}i

pattern 也可以根据需要自由组合, 例如 pattern="%h %l"

对于各fields字段的含义请参照 :

 

http://tomcat.apache.org/tomcat-6.0-doc/config/valve.html 中的 Access Log Valve 项

 

即可输出tomcat的访问日志。其中pattern的参数设置如下

修改为:

%h %l %u %t &quot;%r&quot; %s %b %{Referer}i %{User-Agent}i

%{User-Agent}记录客户端浏览器的相关信息

Values for the pattern attribute are made up of literal text strings, combined with pattern identifiers prefixed by the "%" character to cause replacement by the corresponding variable value from the current request and response. The following pattern codes are supported:

  • %a - Remote IP address
  • %A - Local IP address
  • %b - Bytes sent, excluding HTTP headers, or '-' if zero
  • %B - Bytes sent, excluding HTTP headers
  • %h - Remote host name (or IP address if resolveHosts is false)
  • %H - Request protocol
  • %l - Remote logical username from identd (always returns '-')
  • %m - Request method (GET, POST, etc.)
  • %p - Local port on which this request was received
  • %q - Query string (prepended with a '?' if it exists)
  • %r - First line of the request (method and request URI)
  • %s - HTTP status code of the response
  • %S - User session ID
  • %t - Date and time, in Common Log Format
  • %u - Remote user that was authenticated (if any), else '-'
  • %U - Requested URL path
  • %v - Local server name
  • %D - Time taken to process the request, in millis
  • %T - Time taken to process the request, in seconds
  • %I - Current request thread name (can compare later with stacktraces)

There is also support to write information from the cookie, incoming header, the Session or something else in the ServletRequest. It is modeled after the Apache HTTP Server log configuration syntax:

  • %{xxx}i for incoming headers
  • %{xxx}o for outgoing response headers
  • %{xxx}c for a specific cookie
  • %{xxx}r xxx is an attribute in the ServletRequest
  • %{xxx}s xxx is an attribute in the HttpSession

The shorthand pattern name common (which is also the default) corresponds to '%h %l %u %t "%r" %s %b'.

 

127.0.0.1 192.168.254.108 - -1 127.0.0.1 HTTP/1.1 - GET 80&<60; GET /rightmainima/leftbott4.swf HTTP/1.1 304 5563A67708646B6AA299C33D59BE132A [22/Sep/2007:10:08:52 +0800] - /rightmainima/leftbott4.swf localhost 0 0.000

%a       这是记录访问者的IP,在日志里是127.0.0.1
%A 这是记录本地服务器的IP,在日志里是192.168.254.108
%b 这是发送信息的字节数,不涵括http头,如果字节数为0的话,显示为-
%B 看tomcat的解释,没看出来与b%的区别,但我这里显示为-1,没想明白,望知道者告知,我把官方解释贴出来吧 Bytes sent, excluding HTTP headers
%h 这个就是服务器名称了,如果resolveHosts为false的话,这里就是IP地址了,我的日志里是127.0.0.1
%H 访问者使用的协议,这里是HTTP/1.1
%l 这个也不太清楚,官方也说这个always return '-' 官方解释:Remote logical username from identd (可能这样翻译:记录浏览者进行身份验证时提供的名字)(always returns '-')
%m 访问的方式,是GET还是POST,我这是GET
%p 本地接收访问的端口,呵呵,我这里是80啦
%q 比如你访问的是aaa.jsp?bbb=ccc,那么这里就显示?bbb=ccc,明白了吧,这个q是querystring的意思
%r 官方解释:First line of the request (method and request URI),不是很明白
%s 这个是http的状态,我这里返回的是304,咱们经常看见访问某个网页报错误500什么的,那也会返回500
%S 用户的session ID,这个session ID大家可以另外查一下详细的解释,反正每次都会生成不同的session ID
%t 这就是时间啦,好像有一个Common Log Format可以改,不过我没找到
%u 得到了验证的访问者,否则就是"-"
%U 访问的URL地址,我这里是/rightmainima/leftbott4.swf
%v 服务器名称,可能就是你url里面写的那个吧,我这里是localhost
%D 官方解释:Time taken to process the request, in millis,应该是访问发生的时间,以毫秒记
%T 官方解释:Time taken to process the request, in seconds,应该是访问发生的时间,以秒记

3.修改tomcat日志级别

Tomcat 日志分为下面5类:

catalina 、 localhost 、 manager 、 admin 、 host-manager

每类日志的级别分为如下 7 种:

SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)

日志级别的设定方法

修改 conf/logging.properties 中的内容,设定某类日志的级别

示例:

设置 catalina 日志的级别为: FINE

1catalina.org.apache.juli.FileHandler.level = FINE

禁用 catalina 日志的输出:

1catalina.org.apache.juli.FileHandler.level = OFF

输出 catalina 所有的日志消息均输出:

1catalina.org.apache.juli.FileHandler.level = ALL

本文转载自:http://blog.csdn.net/zhu_xun/article/details/16817937

共有 人打赏支持
神手-追魂
粉丝 0
博文 30
码字总数 2357
作品 0
苏州
高级程序员
Java Web开发入门 - 第3章 Tomcat

Tomcat安装与运行 Web服务器完成底层的网络处理,包括HTTP协议报文格式的编解码、管理具体web请求处理线程等操作。 Tomcat目前最流行最常见的基于Java的web应用服务器软件。 Tomcat Apache ...

抢小孩糖吃
2016/08/19
135
0
tomcat 相关文件说明

项目中经常用到tomcat。今天就给大家分享一下tomcat下各目录与文件的一些作用,下面只是部分重要的啦! 工具 tomcat(以tomcat7.0.50为例) 目录 tomcat-7.0.50解压版,主目录一览: 我们可以...

hapier
2016/06/08
9
0
Ubuntu安装Tomcat

一、下载tomcat (1)方法一:先下载到本地,然后ftp上传到服务器 官方 Apache Tomcat 的下载页面: http://tomcat.apache.org/download-70.cgi (2)方法二:直接在服务器下载(windows版本的区...

我们的旅途
2015/09/18
66
0
毕业设计记录(一)配置web开发环境(java)

本打算跟着总结,写好日志。但是真正忙的时候没有时间总结,有空时又爱玩,只能抽空总结。今天是毕业设计做了一小部分,不知道下一阶段咋整了,所以总结。 首先毕业设计做的事web应用,用的j...

jiler
2014/05/08
0
0
Tomcat在CMD里面运行startup和以服务形式启动的异同点

环境:Tomcat:8.0.30 + JDK:8.0 + Windows环境 问题描述:服务端是通过Git和Mvn的一些命令来完成一些事情 1. 在CMD里面,以startup命令启动,程序运行正常顺利 2. CMD里面,通过service i...

fulele
2017/03/29
291
1

没有更多内容

加载失败,请刷新页面

加载更多

八月新增开源项目:假装自己是图形界面的 Git 命令行工具

每月新增开源项目。顾名思义,每月更新一期。我们会从社区上个月新收录的开源项目中,挑选出有价值的、有用的、优秀的、或者好玩的开源项目来和大家分享。数量不多,但我们力求推荐的都是精品...

编辑部的故事
15分钟前
4
0
20180918 find命令与Linux文件扩展名

命令find 用来查找搜索文件。 搜索文件相关命令: which 从环境变量里的目录中去搜索 whereis(不常用) 从一个固定的库中搜索 locate(需要单独安装 yum install -y mlocate) 查询时会从/var/...

野雪球
17分钟前
1
0
一步步编写自己的PHP爬取代理IP项目(二)

这一章节我们正式开展我们的爬虫项目,首先我们先要知道哪个网站能获取到免费代理IP,目前比较火的网站有西刺代理,快代理等,这里我们拿西刺代理作为例子。 西刺代理官网: http://www.xic...

NateHuang
38分钟前
1
0
GO 数组相关操作

package mainimport("fmt""math/rand""time")func main() {//数组的几种定义方式var arr1 [3]int = [3]int{1,2,3}var arr2 = [3]int{4,5,6}arr3 := [3]string{"h", "w", ......

汤汤圆圆
今天
1
0
JAVA 中interrupt、interrupted和isInterrupted的区别

首先,我们说明下三个方法的功能 interrupt() 向当前调用者线程发出中断信号 isinterrupted() 查看当前中断信号是true还是false interrupted() 是静态方法,查看返回当前中断信号并将中断信号...

我爱春天的毛毛雨
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部