Apache、Tomcat日志设定

Apache Tomcat 日志设定

 

I.  Apache 日志概述

    Apache 包含两种日志:错误日志,访问日志。

错误日志( Error Log ):存放诊断信息和处理请求中出现的错误,经常包含了出错细节以及如何解决,服务器启动或运行中有问题,首先应该查看这个日志。

访问日志( Access Log ):记录服务器所处理的所有请求。

II. Apache 日志内容记录的方法

对于日志的官方说明参照: http://httpd.apache.org/docs/2.2/ja/logs.html  

1.  访问 日志

   使用 combined 获取更详细的日志

配置:

编辑 httpd.conf 文件

CustomLog
CustomLog logs/access_log combined

该格式不会有什么损失,而且还能获得一些额外的信息( referer user-agent )。

适应情况:

对于特定请求引起的服务器异常会有帮助。

   自定义日志格式

配置:

详细内容: http://httpd.apache.org/docs/2.2/ja/mod/mod_log_config.html

适应情况:

对于特定请求引起的服务器异常会有帮助。

   使用 mod_security 记录以 POST 方式传送的数据

配置:

http://www.modsecurity.org/documentation/index.html

适应情况:

加强 Apache 的安全性。

   多文件访问日志

配置:

LogFormat "%h %l %u %t /"%r/" %>s %b" common
CustomLog logs/access_log common
CustomLog logs/referer_log "%{Referer}i -> %U"
CustomLog logs/agent_log "%{User-agent}i"

适应情况:

将不同的日志信息记录到不同的文件,容易查找自己感兴趣的日志。

   条件日志

配置:

# 不记录本机发出的请求
SetEnvIf Remote_Addr "127/.0/.0/.1" dontlog
#
不记录对 robots.txt 文件的请求
SetEnvIf Request_URI "^/robots/.txt$" dontlog
#
记录其他请求
CustomLog logs/access_log common env=!dontlog

适应情况:

获得自己感兴趣的日志内容。

   其他日志文件

配置:

模块

指令

作用

适应情况

mod_logio

LogFormat

记录 接收和 送的 实际

mod_logio 增加了两个 外的 LogFormat 字段 (%I %O) 用于 记录 接收和 送的 实际

mod_log_forensic

ForensicLog

对比记录

mod_log_forensic 提供了 求的 记录 ,也就是在 求被 理之前和 理完成之后 行两次 记录 ,所以 比日志 (forensic log) 求都包含两条 记录 记录 (forensic logger) 十分 格,不可以 行定制。它可以成 无价的 调试 和安全工具。

beos , mpm_winnt , mpmt_os2 , prefork , worker

PidFile

器用于 记录 ( )PID 的文件

Apache httpd 将会在 logs/httpd.pid 文件中保存其父 httpd ID(process id[PID]) 。该文件名可以用 PidFile 指令改

mod_rewrite

RewriteLog

置重写引擎日志的文件

置用于 记录 所有重写操作的日志文件的名

mod_rewrite

RewriteLogLevel

置重写引擎日志的 详细 程度的 级别

高的 Level 会使 Apache 器速度急 下降!大于 2 Level 只用于 调试

mod_cgi , mod_cgid

ScriptLog

CGI 脚本 错误 日志文件的位

置了 CGI 脚本 错误 日志文件的位置。如果没有 ScriptLog ,就不会 错误 日志。如果 置了,所有 CGI 错误 都会被 入作 指令参数的文件

mod_cgi , mod_cgid

ScriptLogBuffer

入日志文件的 PUT POST 的最大数

限制 入日志文件的 PUT 或者 POST 内容的大小,防止如果接收到很大内容 日志文件的尺寸增加得太快太大

mod_cgi , mod_cgid

ScriptLogLength

日志文件的大小限制 ( )

用于限制 CGI 脚本文件的大小

2.  错误日志

   获得更多的日志信息

配置:

loglevel 实现

适应情况:

用来帮助 Apache 开发者判断 Apache 正在做什么事情。

III.    Tomcat 日志设置

1.  修改配置改变访问日志输出内容

server.xml 里的 <host> 标签下加上

<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

其内容与 Apache web server )的访问日志相似。

2.  修改 Tomcat 系统日志内容与等级

通过修改文件 conf/ logging.properties 中的内容

Tomcat 日志分为下面5类:

catalina
localhost
manager
admin
host-manager

日志级别分为:

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

通过 OFF 可以禁用或启用某类日志,修改日志的输出内容。

例:
1catalina.org.apache.juli.FileHandler.level = FINE
and want to stop all logging. Then write::
1catalina.org.apache.juli.FileHandler.level = OFF
Also you can log all the messages with the level ALL

3.      使用 log4j java.util.logging 记录应用程序日志

详细说明请参照: http://tomcat.apache.org/tomcat-6.0-doc/logging.html  

 

你可能感兴趣的:(apache,tomcat,log4j,服务器,脚本,cgi)