`

Tomcat的访问日志 详解

阅读更多
Tomcat的访问日志是靠org.apache.catalina.valves.AccessLogValve来控制的,你可以修改$tomcat/conf/server.xml来启用它 ($tomcat是Tomcat安装的目录)。AccessLogValve默认应该是注释掉的,简单的将其注释去掉,然后重启Tomcat就可以了。
以下是Tomcat默认的配置:
<Valve className=“org.apache.catalina.valves.AccessLogValve”
directory=“logs” prefix=“localhost_access_log.” suffix=“.txt”
pattern=“common” resolveHosts=“false”/>
你可以设置日志保存的目录(directory),日志的文件名的前缀(prefix),后缀(suffix)和日志的具体格式。保存目录,文件名的前缀、后缀都很简单,一般默认设置也就可以了。resolveHost出于性能的考虑,一般也设为false. 但访问日志的格式(pattern)却有很多的选项供你选择。以下列出了一些基本的日志格式项:
%a – 远程主机的IP (Remote IP address)
%A – 本机IP (Local IP address)
%b – 发送字节数,不包含HTTP头,0字节则显示 ‘-’ (Bytes sent, excluding HTTP headers, or ‘-’ if no bytes
were sent)
%B – 发送字节数,不包含HTTP头 (Bytes sent, excluding HTTP headers)
%h – 远程主机名 (Remote host name)
%H – 请求的具体协议,HTTP/1.0 或 HTTP/1.1 (Request protocol)
%l – 远程用户名,始终为 ‘-’ (Remote logical username from identd (always returns ‘-’))
%m – 请求方式,GET, POST, PUT (Request method)
%p – 本机端口 (Local port)
%q – 查询串 (Query string (prepended with a ‘?’ if it exists, otherwise
an empty string)
%r – HTTP请求中的第一行 (First line of the request)
%s – HTTP状态码 (HTTP status code of the response)
%S – 用户会话ID (User session ID)
%t – 访问日期和时间 (Date and time, in Common Log Format format)
%u – 已经验证的远程用户 (Remote user that was authenticated
%U – 请求的URL路径 (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)
你可以用以上的任意组合来定制你的访问日志格式,也可以用下面两个别名common和combined来指定常用的日志格式:
common – %h %l %u %t "%r" %s %b
combined -
%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"
另外你还可以将cookie, 客户端请求中带的HTTP头(incoming header), 会话(session)或是ServletRequest中的数据都写到Tomcat的访问日志中,你可以用下面的语法来引用。
%{xxx}i – 记录客户端请求中带的HTTP头xxx(incoming headers)
%{xxx}c – 记录特定的cookie xxx
%{xxx}r – 记录ServletRequest中的xxx属性(attribute)
%{xxx}s – 记录HttpSession中的xxx属性(attribute)
比如下面是实际的一个访问日志格式的配置:
<Valve className=“org.apache.catalina.valves.AccessLogValve”
directory=“logs” prefix=“phone_access_log.” suffix=“.txt”
pattern=“%h %l %T %t %r %s %b %{Referer}i %{User-Agent}i MSISDN=%{x-up-calling-line-id}i”resolveHosts=“false”/>
其中日志格式(pattern)指定为”%h %l %T %t %r %s %b %{Referer}i %{User-Agent}i MSISDN=%{x-up-calling-line-id}i“,则实际的访问日志中将会包括:
%h – 远程主机名
%l - 远程用户名,始终为 ‘-’
%T - 处理请求所耗费的秒数
%t – 访问日期和时间
%r – HTTP请求中的第一行
%s – HTTP状态码
%b – 发送字节数,不包含HTTP头(0字节则显示 ‘-’)
%{Referer}i – Referer URL
%{User-Agent}i – User agent
MSISDN=%{x-up-calling-line-id}i – 手机号
实际的访问日志如下:
xxx.xxx.xx.xxx – 0.270 [14/Jul/2008:13:10:53 +0800] POST /phone/xxx/gprs HTTP/1.1 200 91812 – SonyEricssonW890i/R1EA Profile/MIDP-2.1 Configuration/CLDC-1.1 MSISDN=11111111111
… …
xxx.xxx.xx.xxx – 0.083 [14/Jul/2008:21:20:55 +0800] POST /phone/xxx/gprs HTTP/1.1 200 404 – SonyEricssonW910i/R1FA Profile/MIDP-2.1 Configuration/CLDC-1.1 MSISDN=11111111111
分享到:
评论

相关推荐

    tomcat仿问日志

    ### Tomcat 访问日志详解 在 IT 领域中,特别是 Web 开发与运维领域,Tomcat 作为一款流行的 Java 应用服务器,其日志管理尤为重要。根据提供的文件信息,本文将深入探讨 Tomcat 的访问日志配置与分析。 #### 一、...

    tomcat5配置详解

    - **webapps**: 发布Web应用程序的目录,将WAR文件或解压后的Web站点文件放在此目录下即可通过Tomcat访问。 2. **Tomcat的启动流程** Tomcat的启动始于解析`bin`目录下的启动脚本,这些脚本最终调用`org.apache....

    Tomcat目录结构配置详解

    **Tomcat目录结构配置详解** Tomcat是一款广泛使用的开源Java Servlet容器,它是Apache软件基金会的Jakarta项目的一部分。深入理解Tomcat的目录结构对于优化服务器性能、管理应用程序以及进行安全配置至关重要。...

    tomcat 日志打印

    ### Tomcat日志打印与配置详解 在IT运维与开发领域,日志管理扮演着至关重要的角色,尤其在像Tomcat这样的应用服务器中,合理的日志配置能够帮助开发者和运维人员快速定位问题,优化系统性能。本文将深入探讨Tomcat...

    Maven工程Tomcat热部署详解.pdf

    在进行Maven工程的Tomcat热部署详解时,首先需要掌握Java后台开发中对于Tomcat热部署的基本知识。这涉及到Java环境的搭建,Tomcat的安装,以及Maven工程中对于热部署的配置方法。 Java环境的搭建是热部署的前提。在...

    tomcat服务器搭建详解

    启动成功后,通过浏览器访问`http://localhost:8080/`,如果显示Tomcat的欢迎页面,说明服务器运行正常。 ### 四、Tomcat的目录结构与应用 Tomcat的主要目录结构包括: - **bin**:存放启动和关闭脚本。 - **conf...

    tomcat目录结构详解

    ### Tomcat目录结构详解 #### 一、Tomcat目录概述 Tomcat服务器是一款开源的Servlet容器,主要用于执行Java Servlet和渲染JSP(Java Server Pages)。它由Apache软件基金会的Jakarta项目开发,提供了轻量级的Web...

    tomcat6.0配置详解

    【Tomcat 6.0配置详解】 Tomcat 6.0 是一款轻量级的Java应用服务器,主要用于托管Servlet和JSP应用。由于其开源、免费、稳定且扩展性强的特点,Tomcat在Java Web开发中占据重要地位。本文将详细介绍Tomcat的安装、...

    Tomcat与Java_Web开发技术详解3.pdf

    ### Tomcat与Java Web开发技术详解 #### 一、Tomcat简介 Tomcat是一款开源的Servlet容器,由Apache软件基金会下属的Jakarta项目开发。它实现了对Servlet和JavaServer Pages (JSP)的支持,可以作为独立的应用服务器...

    tomcat日志配置.doc

    例如,我们可以使用`AccessLogValve`来记录HTTP请求的访问日志。 接下来,我们来谈谈应用级别的日志。许多Java Web应用依赖于第三方日志框架,如Log4j、Logback或者Java Util Logging(JUL)。这里,我们以Log4j为...

    windows下tomcat的catalina.out按天自动分割

    ### Windows下Tomcat的日志按天自动分割方法详解 #### 一、背景介绍 在部署Java Web应用时,经常使用Apache Tomcat作为Web服务器。随着应用程序的运行,Tomcat会生成大量的日志文件,其中最重要的是`catalina.out`...

    Tomcat与Java.Web开发技术详解

    在安全性方面,应启用SSL加密通信,配置防火墙规则,限制远程管理访问,并定期更新Tomcat以修复安全漏洞。 八、Spring Boot与Tomcat整合 Spring Boot简化了Java Web应用的开发,它内置了Tomcat服务器,开发者只需...

    Tomcat目录结构及其说明

    - 日志文件包括访问日志、错误日志等,对于调试问题非常有帮助。 - 开发者可以通过这些日志来追踪系统的运行状态和异常情况。 5. **/temp** - **位置**: `/temp` - **用途**: - 存放Tomcat运行时产生的临时...

    Tomcat与Java Web开发技术详解源代码

    《Tomcat与Java Web开发技术详解》是一本深入解析Tomcat服务器及Java Web开发的经典著作,作者孙卫琴以其丰富的经验和深入的理解,为读者呈现了Java Web应用在Tomcat上的实现过程。书中涵盖了大量的实践案例和详尽的...

    TOMCAT原理详解及请求过程

    ### TOMCAT原理详解及请求过程 #### 一、TOMCAT概述 TOMCAT是一个开源的免费的轻量级Web应用服务器,它主要作为一个JSP/Servlet容器而被广泛使用。Tomcat支持Java Servlet和JavaServer Pages (JSP)技术,并且提供...

    Tomcat与Java.Web开发技术详解(PDF)

    6. **安全性**:在Tomcat中实现Web应用的安全性,可以配置SSL/TLS以提供加密传输,设置角色和权限进行访问控制,使用 valves 进行自定义过滤,以及利用安全管理器强化服务器安全。 7. **JNDI与Context**:Java ...

Global site tag (gtag.js) - Google Analytics