Tomcat访问日志

转载 2013年12月04日 16:32:57

常使用web服务器的朋友大都了解,一般的web server有两部分日志:
    一是运行中的日志,它主要记录运行的一些信息,尤其是一些异常错误日志信息
    二是访问日志信息,它记录的访问的时间,IP,访问的资料等相关信息。
   
现在我来和大家介绍一下利用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"/>
        -->
    其中 directory是产生的目录 tomcat安装${catalina}作为当前目录
    pattern表示日志生产的格式,common是tomcat提供的一个标准设置格式。其具体的表达式为 %h %l %u %t "%r" %s %b
    但本人建议采用以下具体的配置,因为标准配置有一些重要的日志数据无法生。
        %h %l %u %t "%r" %s %b %T 
具体的日志产生样式说明如下(从官方文档中摘录):
    * %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

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 syntax:

    * %{xxx}i for incoming 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


现在我们回头再来看一下下面这个配置 %h %l %u %t "%r" %s %b %T 生产的访问日志数据,我们可以做哪些事?
先看一下,我们能得到的数据有:
    * %h 访问的用户IP地址
    * %l 访问逻辑用户名,通常返回'-'
    * %u 访问验证用户名,通常返回'-'
    * %t 访问日时
    * %r 访问的方式(post或者是get),访问的资源和使用的http协议版本
    * %s 访问返回的http状态
    * %b 访问资源返回的流量
    * %T 访问所使用的时间
   
有了这些数据,我们可以根据时间段做以下的分析处理(图片使用jfreechart工具动态生成):
  * 独立IP数统计
  * 访问请求数统计
  * 访问资料文件数统计
  * 访问流量统计
  * 访问处理响应时间统计
  * 统计所有404错误页面
  * 统计所有500错误的页面
  * 统计访问最频繁页面
  * 统计访问处理时间最久页面
  * 统计并发访问频率最高的页面

Tomcat访问日志分析

常使用web服务器的朋友大都了解,一般的web server有两部分日志:     一是运行中的日志,它主要记录运行的一些信息,尤其是一些异常错误日志信息     二是访问日志信息,它记录的访问的...
  • leizi191110211
  • leizi191110211
  • 2016年06月14日 10:39
  • 5045

tomcat 访问日志配置

在tomcat的server.xml文件中,host主机配置区域找到类似如下(红色部分)即为访问日志的配置:               unpackWARs="true" autoDeplo...
  • zhang168
  • zhang168
  • 2015年11月12日 15:46
  • 1755

tomcat访问(access)日志配置、记录Post请求参数

tomcat访问日志格式配置,在config/server.xml里Host标签下加上                prefix="localhost_access_log." suffix="....
  • qq_30121245
  • qq_30121245
  • 2016年10月19日 18:35
  • 9945

Tomcat访问日志浅析

className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="local...
  • yaerfeng
  • yaerfeng
  • 2014年10月21日 10:32
  • 18346

配置Tomcat的访问日志格式化输出

按要求输出指定的访问日志格式 在tomcat的server.xml文件中,Host主机配置区域找到类似如下(Value标签元素)即为访问日志的配置: 1 2 3 4 5 6 ...
  • wwd0501
  • wwd0501
  • 2015年09月28日 18:53
  • 2123

Nginx、tomcat访问日志准实时分析统计--goaccess

需求:及时得到线上用户访问日志分析统计结果,以便给开发、测试、运维、运营人员提供决策!找了各种工具,最终还是觉得goaccess不仅图文并茂,而且速度快,每秒8W 的日志记录解析速度,websocke...
  • yown
  • yown
  • 2017年02月20日 20:49
  • 3584

Tomcat关闭日志输出

一般在部署Tomcat后,运行久了,catalina.out文件会越来越大,对系统的稳定造成了一定的影响。可通过修改conf/logging.properties日志配置文件来屏蔽掉这部分的日志信息。...
  • alex_bean
  • alex_bean
  • 2016年08月26日 10:04
  • 7042

tomcat记录访问日志

一般的web server有两部分日志: 一是运行的日志,它主要肌瘤运行的一些信息,尤其是一些异常错误日志信息 二是访问日志信息,他是记录的访问的时间,ip,url,sessionId等信息。 ...
  • HANLIPENGHANLIPENG
  • HANLIPENGHANLIPENG
  • 2017年11月30日 15:42
  • 65

Tomcat日志配置远程Syslog采集

本文将指引你:如何对Tomcat日志进行采集,并通过Syslog协议,自动实时的发送到远程的集中日志分析中心,便于集中式的日志存储和管理,提高网站的运维效率。 第一步:初始化日志采集环境 先确保系...
  • leizi191110211
  • leizi191110211
  • 2016年06月06日 10:31
  • 2373

部署tomcat暴露html格式日志,并定期清理日志

这个系列共三篇文章: 图文实例:dubbo本地模拟RPC 图文实例:用maven打包dubbo项目并部署到云平台 图文实例:部署tomcat暴露html格式日志,并定期清理日志这三篇博客的目的...
  • antony9118
  • antony9118
  • 2016年09月02日 18:07
  • 1026
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Tomcat访问日志
举报原因:
原因补充:

(最多只允许输入30个字)