`
yysct2005
  • 浏览: 90726 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

如何配置和使用Tomcat访问日志

    博客分类:
  • java
阅读更多

配置位置在log下的server.xml,(tomcat容器)

<Engine defaultHost="localhost" name="Catalina"> 
<Host appBase="webapps" name="localhost"> 
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/> 
<Valve className="org.apache.catalina.valves.AccessLogValve" fileDateFormat="yyyy-MM-dd" pattern="%h %l %u %t %r %s %b %{Referer}i %{User-Agent}i %{x-jphone-uid}i %{x-up-subno}i" prefix="localhost_access_log." suffix=".txt" directory="/var/log/accesslog" condition="drop"/> 
<Context path="" docBase="cn_issue" debug="0"/> 
</Host> 
<Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/> 
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/> 
</Engine>

以下是摘抄正文

original link:http://forum.ospod.com/post-25088-1.fhtml;jsessionid=3361F472A5E12B9B9BEA1632EC50603A

Access Log Valve用来创建日志文件,格式与标准的web server日志文件相同。可以使用用日志分析工具对日志进行分析,跟踪页面点击次数、用户会话的活动等。Access Log Valve的很多配置和行为特性与File Logger相同,包括每晚午夜自动切换日志文件。Access Log Valve可以和任何Catalina容器关联,记录该容器处理的所有请求。 
例子如下: 

directory="logs" prefix="localhost_access_log." suffix=".txt" 
pattern="%{X-Forwarded-For-Pound}i %l %u %t "%r" %s %b %T "%{HTTP_X_UP_CALLING_LINE_ID}i" "%{x-up-calling-line-id}i" "%{User-Agent}i"" resolveHosts="false"/> 


className 实现的Java类名。必须被设置成org.apache.catalina.valves.AccessLogValve。 
directory 存放日志文件的目录,可以是相对路径或者绝对路径。如果使用相对路径,是指相对于 $CATALINA_HOME的路径。如果不指定directory属性,缺省值是"logs"(相对于 $CATALINA_HOME) 
pattern 需要记录的请求/响应不同信息域的格式布局。如果是"common"或者"combine",说明选择标准格式。下面会有关于配置这个属性的更多信息。 
prefix 日志文件名的前缀。如果没有指定,缺省值是"access_log."。如果不想使用前缀,使用长度为0的字符串。 

resolveHosts 将远端主机的IP地址通过DNS查询转换成主机名,设为true。如果为false,忽略DNS查询,报告远端的IP地址。 

suffix 日志文件名的后缀。如果没有指定,缺省值是""。如果不想使用后缀,使用长度为0的字符串。 

rotatable 缺省值为true,用来决定日志是否翻转的标志。如果为false,日志文件永远不翻转,并且忽略fileDataFormat。要谨慎使用。 

condition 打开条件日志。如果设置了这个属性,只有在ServletRequest.getAttribute()是null的时候,才会为请求创建日志。比如,如果 condition设为junk,则只有在Servlet.getAttribute("junk")==null的时候,才会记录这个请求。使用过滤器,可以很容易设置(或者取消设置)不同请求的属性。 
fileDateFormat 允许在日志文件名称中使用定制的日期格式。日志的格式也决定了日志文件翻转的频率。如果想每个小时翻转一次,将这个值设为yyyy-MM-dd.HH


pattern属性值由字符串常量和pattern标识符加上前缀"%"组合而成。pattern标识符加上前缀"%",用来代替当前请求/响应中的对应的变量值。目前支持如下的pattern: 

  • %a - 远端IP地址
  • %A - 本地IP地址
  • %b - 发送的字节数,不包括HTTP头,如果为0,使用"-"
  • %B - 发送的字节数,不包括HTTP头
  • %h - 远端主机名(如果resolveHost=false,远端的IP地址)
  • %H - 请求协议
  • %l - 从identd返回的远端逻辑用户名(总是返回 '-')
  • %m - 请求的方法(GET,POST,等)
  • %p - 收到请求的本地端口号
  • %q - 查询字符串(如果存在,以 '?'开始)
  • %r - 请求的第一行,包含了请求的方法和URI
  • %s - 响应的状态码
  • %S - 用户的session ID
  • %t - 日志和时间,使用通常的Log格式
  • %u - 认证以后的远端用户(如果存在的话,否则为'-')
  • %U - 请求的URI路径
  • %v - 本地服务器的名称
  • %D - 处理请求的时间,以毫秒为单位
  • %T - 处理请求的时间,以秒为单位

结果举例如下: 
- - - [29/Aug/2005:09:34:48 +0800] "GET /waptest/server?productid=qqportal&actionid=index&user_type=1&station=tencent&mid=12345678908888&mobile_no=13724179457&qazxcdew=1 HTTP/1.1" 404 710 0.015 "-" "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Opera 7.11 [zh-cn]" 

- - - [29/Aug/2005:10:27:29 +0800] "OPTIONS / HTTP/1.1" 404 668 0.203 "-" "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"

 附录:server.xml 

<?xml version='1.0' encoding='utf-8'?>
<Server>
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
  <GlobalNamingResources>
    <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
    <Resource auth="Container" description="User database that can be updated and saved" name="UserDatabase" type="org.apache.catalina.UserDatabase"/>
    <ResourceParams name="UserDatabase">
      <parameter>
        <name>factory</name>
        <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
      </parameter>
      <parameter>
        <name>pathname</name>
        <value>conf/tomcat-users.xml</value>
      </parameter>
    </ResourceParams>
  </GlobalNamingResources>
  <Service name="Catalina">
    <Connector acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="80" redirectPort="8443">
    </Connector>
    <Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443">
    </Connector>
    <Engine defaultHost="localhost" name="Catalina">
      <Host appBase="webapps" name="localhost">
        <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>
        <Valve className="org.apache.catalina.valves.AccessLogValve" fileDateFormat="yyyy-MM-dd" pattern="%h %l %u %t %r %s %b %{Referer}i %{User-Agent}i %{x-jphone-uid}i %{x-up-subno}i" prefix="localhost_access_log." suffix=".txt" directory="/log/accesslog" condition="drop"/>
    <Context path="" docBase="cn_issue" debug="0"/>
      </Host>
      <Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
    </Engine>
  </Service>
</Server>

分享到:
评论

相关推荐

    tomcat日志配置.docx

    我们可以通过编辑 ${catalina}/conf/server.xml 文件来配置 Tomcat 访问日志。例如,可以添加以下配置: ``` directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts...

    在tomcat的访问日志配置:awstats

    至于AWStats的配置,首先需要下载并解压AWStats软件,然后在Tomcat服务器上安装和配置。这通常包括以下步骤: 1. 将AWStats的`html`和`lib`目录复制到Tomcat的`webapps`目录下。 2. 配置`awstats.conf`文件,指定要...

    Linux下配置Tomcat日志分析

    以下是如何在Linux系统,特别是Redhat发行版上配置Tomcat日志以使用awstats进行分析的详细步骤。 首先,我们需要确保系统已经安装了Apache Tomcat服务器。如果尚未安装,可以使用如下命令进行安装: ```bash sudo ...

    使用Tomcat配置域名

    在IT行业中,Tomcat是一个广泛使用的开源Java Servlet容器,它实现了Java EE的Web部分,包括Servlet和JSP规范。配置域名在Tomcat中是将一个特定的URL与部署在服务器上的应用关联起来的过程,这对于多站点托管或者为...

    iis日志和tomcat日志批量分析(python)demo

    IIS是Microsoft提供的Web服务器,而Tomcat是基于Java的开源Web应用服务器,它们都会记录详细的访问日志,这些日志包含了许多有价值的信息。 **IIS日志分析** IIS日志通常以W3C扩展日志格式存储,包括以下字段:...

    Tomcat日志catalina.out过大解决方案--使用logback按日轮转.rar

    在Java Web应用开发中,Tomcat作为常用的...总之,通过引入`Logback`并进行合理配置,我们可以有效解决`Tomcat`日志`catalina.out`过大问题,实现日志的有序管理,提高系统性能,并为故障排查和数据分析提供便利。

    tomcat 日志设置解决方案

    这个示例会创建一个访问日志,记录请求的详细信息。 3. **日志级别与格式** Tomcat使用Java Util Logging (JULI)作为日志框架,支持`SEVERE`、`WARNING`、`INFO`、`CONFIG`、`FINE`、`FINER`和`FINEST`等日志级别...

    tomcat日志详细说明

    日期.txt** 访问日志配置: - 配置文件位置:`conf/server.xml` - `...

    Tomcat配置方法 Tomcat配置方法 Tomcat配置方法

    1. **users.xml**和**tomcat-users.xml**:在`conf`目录下,用于配置Tomcat的用户和角色,以实现基于角色的访问控制(RBAC)。 2. **context.xml**或`META-INF/context.xml`:可以设置应用级别的安全约束,如SSL...

    Tomcat服务器配置 视频教程 Tomcat视频

    9. **日志和错误处理**:理解日志文件的位置和内容,以及如何调整日志级别和配置自定义日志记录。 10. **性能优化**:讨论如何调整JVM参数,如堆内存大小、垃圾收集策略,以及Tomcat的线程池设置,以提升服务器性能...

    Tomcat的安装及配置教程步骤

    以上是Tomcat安装和配置的基本流程,实际使用中可能需要根据具体需求进行更复杂的配置。在学习过程中,阅读官方文档、查阅社区资源和实践操作是提升技能的关键。希望这个教程能帮助你顺利开始Tomcat的使用。

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

    本文将详细介绍如何配置Tomcat访问日志以及如何记录POST请求参数。 首先,Tomcat访问日志的配置通常在`conf/server.xml`文件中的`Host`标签下进行。要启用并定制访问日志,需要添加一个`Valve`元素,其`className`...

    tomcat 日志打印

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

    tomcat日志配置.doc

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

    成功使用的tomcat

    `conf/tomcat-users.xml`是用户和角色的配置文件,用于管理Tomcat的访问控制。例如,添加管理员用户并定义角色,如`manager-gui`,允许通过Web界面管理Tomcat。 启动Tomcat,可以通过bin目录下的`startup.sh`(Unix...

    tomcat8更换log4j记录日志

    接下来,压缩包中的"**说明.txt**"文件应该是关于如何在Tomcat8中集成和配置Log4j的详细步骤,可能包括以下内容: 1. 将`log4j.properties`文件放置在Tomcat的`conf`目录下,以便于Tomcat启动时自动加载。 2. 如果...

    tomcat安装和配置

    总结,Tomcat的安装和配置涉及多个环节,包括下载、解压、环境变量配置、端口修改、应用部署、日志管理以及安全管理等。熟练掌握这些步骤,将有助于你高效地开发和运行Java Web应用。在实际操作过程中,应仔细阅读...

    详解Tomcat配置及使用.docx

    Tomcat 配置及使用 Tomcat 是一个开源的 Java servlet 容器,提供了强大的 Web 服务器功能。在本文中,我们将详细...本文只是对 Tomcat 配置及使用的基本介绍,更多的使用和配置可以通过官方文档和其他资源来学习。

    Tomcat配置管理实践

    11,TOMCAT访问日志记录 12,TOMCAT状态验证 13,TOMCAT设置SSL访问 14,TOMCAT安全策略 15,TOMCAT的URL编码格式 16,TOMCAT传输压缩 17,TOMCAT集群和负载均衡 18,ECD部门AP(TOMCAT)部署规范

Global site tag (gtag.js) - Google Analytics