![]() | |
Sun Java System Web Proxy Server 4.0.1 管理指南 |
第 9 章
使用日志文件您可以使用多种方法监视服务器的活动。本章介绍了通过记录和查看日志文件来监视服务器的方法。有关使用内置性能监视服务或 SNMP 的信息,参见监视服务器。
本章包括以下各节:
关于日志文件服务器日志文件记录服务器的活动。使用这些日志可以监视服务器,并在排除故障时为您提供帮助。错误日志文件位于服务器根目录下的 proxy-server_name/logs/errors 中,该文件列出了服务器曾遇到的所有错误。访问日志位于服务器根目录下的 proxy-server_name/logs/access 中,该文件记录了向服务器提出的请求以及服务器做出的响应方面的信息。可以配置 Proxy Server 访问日志文件中记录的信息。使用日志分析程序可以生成服务器统计信息。通过归档可以将服务器的错误日志文件和访问日志文件进行备份。
UNIX 和 Windows 平台上的日志记录本节介绍如何创建日志文件。此外,还包括以下主题:
默认错误日志记录
在 UNIX 和 Windows 平台上,来自管理服务器的日志都集中存放在管理 proxy-admserv/logs/ 目录中。来自服务器实例的日志集中存放在 proxy-server_name/logs/ 目录中。
可以设置整个服务器的默认日志级别。可将标准输出和标准错误重定向到服务器的事件日志,并将日志输出定向到操作系统的系统日志。此外,还可以将标准输出和标准错误内容定向到服务器的事件日志。默认情况下,日志消息除了发送到指定的服务器日志文件以外,还将发送到标准错误。
使用 syslog 记录日志
syslog 适用于要求集中记录日志的稳定的可操作环境。对于经常需要使用日志输出来进行诊断和调试的环境,单独的服务器实例日志可能更易于管理。
通过将 syslog 日志文件与 syslogd 以及系统日志守护进程一起使用,可以将 syslog.conf 文件配置为:
将日志记录到 syslog 意味着来自 Proxy Server 以及其他守护进程应用程序的日志都将集中存放在同一个文件中,因此在日志记录消息中增加了以下信息,以便标识来自特定服务器实例的 Proxy Server 专有消息:
可以在 server.xml 文件中为管理服务器和服务器实例二者均配置 LOG 元素。
要详细了解 UNIX 操作环境中所使用的 syslog 日志记录机制,请在出现终端提示时使用以下 man 命令:
man syslog
man syslogd
man syslog.conf
使用 Windows eventlog 记录日志
要详细了解 Windows 操作环境中所使用的事件日志机制,请在 Windows 帮助系统索引中查找关键字“事件日志”。
日志级别下表按严重性增高顺序定义了 Proxy Server 中的日志级别和消息。
归档日志文件可以将访问日志文件和错误日志文件设置为自动归档。在某一时间或在指定的时间间隔后,用户的日志将被轮转。Proxy Server 会保存旧的日志文件,并用含有保存日期和时间的名称为所保存的文件加上时间戳。
例如,可以将访问日志文件设置为每小时轮转一次,而 Proxy Server 会保存该文件并将其命名为 "access.200505160000",其中,将日志文件名、年月日和 24 时制时间连接在一起形成了单个字符串。根据所设置的日志轮转类型,日志归档文件的实际格式会有所不同。
Proxy Server 提供了两种用于归档文件的日志轮转类型:内部守护进程日志轮转和基于计时程序的日志轮转。
内部守护进程日志轮转
此类型的日志轮转发生在 HTTP 守护进程内,且只能在启动时进行配置。使用内部守护进程日志轮转,服务器可以在内部轮转日志,而无需重新启动。使用此方法轮转的日志将被保存为以下格式:
access.<YYYY><MM><DD><HHMM>
errors.<YYYY><MM><DD><HHMM>
可以指定用来轮转日志文件和开始新日志文件的基准时间。例如,如果轮转开始时间为晚 12:00,并且轮转间隔为 1440 分钟(一天),则当您保存并应用更改时,系统将立即创建一个新的日志文件,而不管当前的时间。日志文件将在每天的晚 12:00 进行轮转,而且将在晚 12:00 为访问日志加上时间戳并将其保存为 access.200505172400。同样,如果将间隔设置为 240 分钟(4 小时),开始时间为晚 12:00,则访问日志文件将包含从晚 12:00 到晚 4:00、从晚 4:00 到早 8:00 等时间段内收集到的信息。
如果启用了日志轮转,将在服务器启动时开始进行日志文件轮转。第一个要轮转的日志文件将收集从当前时间至下次轮转时间之间的信息。以上一个例子为例,如果将开始时间设置为晚 12:00,并将轮转间隔设置为 240 分钟,而当前的时间为早 6:00,则第一个要轮转的日志文件将包含从早 6:00 至早 8:00 之间收集到的信息,下一个日志文件将包含从早 8:00 至中午 12:00 的信息,依此类推。
基于调度程序的日志轮转
这种类型的日志轮转所基于的时间和日期存储在 server.xml 文件中,该文件位于 server_root/proxy-server_name/config/ 目录。此方法可用于将日志文件立即归档,或使服务器在特定日期中的特定时间将日志文件归档。服务器的调度程序配置选项存储在 server_root/proxy-server_name/config/ 目录的 server.xml 中。使用基于调度程序的方法轮转的日志将被保存为以下格式:
<original_filename>.<YYYY><MM><DD><HHMM>
例如,当在下午 4:30 进行轮转时,access 可能会变成 access.200505171630。
日志轮转在服务器启动时进行初始化。如果开启了轮转,Proxy Server 会创建一个带有时间戳的访问日志文件,并在服务器启动时开始轮转。
轮转开始以后,如果有需要记录到访问日志文件或错误日志文件的请求或错误,并且其发生在预定的“下次轮转时间”之后,则 Proxy Server 会创建一个带有新时间戳的日志文件。
要归档日志文件并指定是采用内部守护进程方法还是采用基于调度程序的方法,请使用 Server Manager 中的 "Archive Log" 页面。
设置访问日志首选项在安装过程中,将为服务器创建名为 access 的访问日志文件。通过指定是否记录访问、记录日志时使用的格式,以及当客户机访问资源时服务器是否要查找客户机的域名,用户可以自定义任意资源的访问日志记录。
可以使用 Server Manager 中的 "Set Access Log Preferences" 页面来指定日志记录首选项,也可在 obj.conf 文件中手动配置以下指令。在 obj.conf 中,服务器调用函数 flex-init 来初始化灵活日志记录系统,并调用函数 flex-log 以灵活日志格式记录特定于请求的数据。为使用通用日志文件格式记录请求,服务器会调用 init-clf 来初始化 obj.conf 中使用的“通用日志”子系统,并调用 common-log 以通用日志格式(大多数 HTTP 服务器采用的格式)记录特定于请求的数据。
创建某个资源的访问日志后,将无法更改日志的格式,除非对它进行归档或为该资源创建一个新的访问日志文件。
更改现有日志文件的格式时,应首先删除/重命名现有的日志文件,也可以使用不同的文件名。
设置 Administration Server 的访问日志首选项
- 访问 Administration Server 并单击 "Preferences" 选项卡。
- 单击 "Set Access Log Preferences" 链接。将显示 "Set Access Log Preferences" 页面。
- 从下拉式列表中选择资源,或单击 "Regular Expression" 按钮输入正则表达式,然后单击 "OK"。
- 指定是否记录客户机访问。这要求启用“域名服务”(DNS)。
- 指定访问日志文件的绝对路径。默认情况下,日志文件保存在服务器根目录下的 logs 目录中。如果指定了部分路径,则服务器将假定该路径相对于服务器根目录下的 logs 目录。
如果编辑的是整个服务器,则此字段的默认值为 $accesslog,在配置文件中,该变量表示服务器的访问日志文件。
- 选择是否在访问日志中记录访问服务器的那些系统的域名或 IP 地址。
- 选择要在访问日志中使用的日志文件格式的类型。可用选项如下:
- Use Common LogFile Format。包括客户机的主机名、经过验证的用户名、请求日期和时间、HTTP 标头、返回给客户机的状态码,以及发送给客户机的文档的内容长度。
- Only Log。使您可以选择要记录的信息。可从以下灵活日志格式项中进行选择:
- Client Hostname。请求访问的客户机的主机名或 IP 地址(如果已禁用 DNS)。
- Authenticate User Name。如果需要进行验证,您可以在访问日志中列出经过验证的用户名。
- System Date。客户机请求的日期和时间。
- Full Request。客户机所做的完整请求。
- Status。服务器返回给客户机的状态码。
- Content Length。发送至客户机的文档的内容长度(以字节计)。
- HTTP Header, "referer"。引用者用于指定客户机从中访问当前页面的页面。例如,如果用户正在查看文本搜索查询的结果,则引用者将是用户从中访问文本搜索引擎的页面。引用者允许服务器创建回溯链接的列表。
- HTTP Header, "user-agent"。用户代理信息包括客户机所用浏览器的类型、版本和客户机运行的操作系统,这些信息均来自于客户机向服务器发送的 HTTP 标头信息中的 User-agent 字段。
- Method。所用的 HTTP 请求方法(如 GET、PUT 或 POST)。
- URI。统一资源标识符。服务器上资源的位置。例如,对于 http://www.a.com:8080/special/docs,URI 为 special/docs。
- Query String Of The URI。URI 中问号之后的所有内容。例如,对于 http://www.a.com:8080/special/docs?find_this,URI 的查询字符串为 find_this。
- Protocol。使用的传输协议和版本。
- 如果选择自定义格式,请在 "Custom Format" 字段中键入该格式。
- 单击 "OK"。
- 单击 "Restart Required"。将显示 "Apply Changes" 页面。
- 单击 "Restart Proxy Server" 按钮以应用更改。
设置服务器实例的访问日志首选项
- 访问 Server Manager,然后单击 "Server Status" 选项卡。
- 单击 "Set Access Log Preferences" 链接。将显示 "Set Access Log Preferences" 页面。
- 从下拉式列表中选择资源,或单击 "Regular Expression" 按钮输入正则表达式,然后单击 "OK"。
- 指定是否记录客户机访问。这要求启用“域名服务”(DNS)。
- 指定访问日志文件的绝对路径。默认情况下,日志文件保存在服务器根目录下的 logs 目录中。如果指定了部分路径,则服务器将假定该路径相对于服务器根目录下的 logs 目录。
如果编辑的是整个服务器,则此字段的默认值为 $accesslog,在配置文件中,该变量表示服务器的访问日志文件。
- 选择是否在访问日志中记录访问服务器的那些系统的域名或 IP 地址。
- 选择日志文件应采用的格式:通用、扩展、扩展 2、仅限指定信息("Only log" 单选按钮)或自定义。如果单击 "Only log",则可以使用以下灵活日志格式项:
- 选择要在访问日志中使用的日志文件格式的类型。服务器访问日志可以采用通用日志文件格式、扩展日志文件格式、扩展 2 日志文件格式、灵活日志格式或您自己的可自定义格式。通用日志文件格式是普遍受支持的格式,可提供服务器的固定信息。灵活日志格式允许(从 Proxy Server)选择要记录的内容。可自定义的格式使用参数块,用户可以指定这些参数块来控制记录的内容。
- Use Common LogFile Format。包括客户机的主机名、经过验证的用户名、请求日期和时间、HTTP 标头、返回给客户机的状态码,以及发送给客户机的文档的内容长度。
- Use Extended LogFile Format。包括通用日志文件格式的所有字段以及一些附加字段,如远程状态、代理服务器到客户机的内容长度、远程服务器到代理服务器的内容长度、代理服务器到远程服务器的内容长度、客户机到代理服务器的标头长度、代理服务器到客户机的标头长度、代理服务器到远程服务器的标头长度、远程服务器到代理服务器的标头长度以及传送时间。
- Use Extended2 LogFile Format。包括扩展日志文件格式的所有字段以及一些附加字段,如客户机状态、服务器状态、远程状态、高速缓存完成状态以及实际路由。
- Only Log。使您可以选择要记录的信息。可从以下灵活日志格式项中进行选择:
- Client Hostname。请求访问的客户机的主机名或 IP 地址(如果已禁用 DNS)。
- Authenticate User Name。如果需要进行验证,您可以在访问日志中列出经过验证的用户名。
- System Date。客户机请求的日期和时间。
- Full Request。客户机所做的完整请求。
- Status。服务器返回给客户机的状态码。
- Content Length。发送至客户机的文档的内容长度(以字节计)。
- HTTP Header, "referer"。引用者用于指定客户机从中访问当前页面的页面。例如,如果用户正在查看文本搜索查询的结果,则引用者将是用户从中访问文本搜索引擎的页面。引用者允许服务器创建回溯链接的列表。
- HTTP Header, "user-agent"。用户代理信息包括客户机所用浏览器的类型、版本和客户机运行的操作系统,这些信息均来自于客户机向服务器发送的 HTTP 标头信息中的 User-agent 字段。
- Method。所用的 HTTP 请求方法(如 GET、PUT 或 POST)。
- URI。统一资源标识符。服务器上资源的位置。例如,对于 http://www.a.com:8080/special/docs,URI 为 special/docs。
- Query String Of The URI。URI 中问号之后的所有内容。例如,对于 http://www.a.com:8080/special/docs?find_this,URI 的查询字符串为 find_this。
- Protocol。使用的传输协议和版本。
- Cache Finish Status。此字段指定最新性检查是否已写入、刷新或返回高速缓存文件。
- Remote Server Finish Status。此字段指定向远程服务器发出的请求是已成功执行、已从客户机单击 Netscape Navigator 中的“停止”按钮中断,还是被错误条件异常中止。
- Status Code From Server。从服务器返回的状态码。
- Route To Proxy (PROXY, SOCKS, DIRECT)。检索资源时使用的路由。可通过以下几种方式检索文档:直接检索、通过代理服务器检索,或通过 SOCKS 服务器检索。
- Transfer Time。传送的时间长度(以秒或毫秒计)。
- Header-length From Server Response。来自服务器响应的标头长度。
- Request Header Size From Proxy To Server。从代理服务器到服务器的请求标头的大小。
- Response Header Size Sent To Client。发送到客户机的响应标头的大小。
- Request Header Size Received From Client。从客户机接收到的请求标头的大小。
- Content-length From Proxy To Server Request。由代理服务器发往服务器的文档的长度(以字节计)。
- Content-length Received From Client。来自客户机的文档的长度(以字节计)。
- Content-length From Server Response。来自服务器的文档的长度(以字节计)。
- Unverified User From Client。验证时为远程服务器指定的用户名。
- 如果选择自定义格式,请在 "Custom Format" 字段中键入该格式。
- 如果不想记录来自某些主机名或 IP 地址的客户机访问,请在 "host names" 和 "IP Addresses" 字段中键入相应的内容。对于服务器不应记录发起访问的主机,可键入这些主机的通配符模式。例如,*.example.com 不会记录域 example.com 中人员的访问。可以为主机名、IP 地址中的任一个或两者键入通配符模式。
- 选择是否要在日志文件加入格式字符串。如果使用的是 Proxy Server 的日志分析程序,则应加入格式字符串。如果使用的是第三方分析程序,则可能不需要在日志文件中加入格式字符串。
- 单击 "OK"。
- 单击 "Restart Required"。将出现 "Apply Changes" 页面。
- 单击 "Restart Proxy Server" 按钮以应用更改。
简易 Cookie 日志记录
Proxy Server 提供了一种使用 flexlog 功能记录特定 cookie 的简单方法。将 "Req->headers.cookie.cookie_name" 添加到配置文件 obj.conf 中用于初始化 flex-log 子系统的那一行。如果 cookie 变量存在于请求标头中,将记录 cookie 变量 cookie_name 的值;如果变量不存在,将记录 "-"。
设置错误日志记录选项Proxy Server 允许配置要在服务器错误日志中记录的信息。
设置错误日志记录选项
- 要从 Administration Server 中设置错误日志记录选项,请选择 "Preferences" 选项卡,然后单击 "Set Error Log Preferences" 链接。
要从 Server Manager 中设置服务器实例的错误日志记录选项,请选择 "Server Status" 选项卡,然后单击 "Set Error Log Preferences" 链接。
- 在 "Error Log File Name" 字段中指定存储来自服务器的消息的文件。
- 在 "Log Level" 下拉式列表中,指定应记录在错误日志中的信息量。可用选项如下:
- 如果要将标准输出重定向到错误日志,请选中 "Log Stdout" 复选框。
- 如果要将标准错误输出重定向到错误日志,请选中 "Log Stderr" 复选框。
- 选中 "Log To Console" 复选框,将日志消息重定向到控制台。
- 如果要使用 UNIX syslog 服务或 Windows 的“事件日志”来产生和管理日志,请选中 "Use System Logging" 复选框。
- 单击 "OK"。
- 单击 "Restart Required"。将出现 "Apply Changes" 页面。
- 单击 "Restart Proxy Server" 按钮以应用更改。
配置 LOG 元素下表介绍了可在 server.xml 文件中配置的 LOG 元素属性:
查看访问日志文件您可以查看服务器的活动访问日志文件和已归档的访问日志文件。
要从 Administration Server 中查看 Administration Server 的访问日志,请选择 "Preferences" 选项卡,然后单击 "View Access Log" 链接。
要从 Server Manager 中查看服务器实例的访问日志,请选择 "Server Status" 选项卡,然后单击 "View Access Log" 链接。
以下是一个采用通用日志文件格式的访问日志示例(该格式在 "Log Preferences" 窗口中指定;有关更多信息,参见设置访问日志首选项):
198.18.17.222 - - [20/May/2005:14:15:49 +0530] "GET http://www.example.com/ HTTP/1.1" 504 622
198.18.17.222 - abc [20/May/2005:14:16:09 +0530] "GET http://www.test.com/report.zip HTTP/1.1" 504 630
表 9-3 对该访问日志样例中的最后一行进行了说明。
查看错误日志文件错误日志文件包含该文件创建以来服务器遇到的错误;还包含有关服务器的提示性信息(例如服务器的启动时间)。失败的用户验证也记录在此错误日志中。使用错误日志可以查找断开的 URL 路径或缺少的文件。
要从 Administration Server 中查看 Administration Server 的错误日志文件,请选择 "Preferences" 选项卡,然后单击 "View Error Log" 链接。
要从 Server Manager 中查看服务器实例的错误日志文件,请选择 "Server Status" 选项卡,然后单击 "View Error Log" 链接。
下面例举了错误日志中的三个条目。
使用日志分析程序server_root/extras/log_anly 目录含有通过 Server Manager 用户界面运行的日志分析工具。此日志分析程序仅分析通用日志格式的文件。log_anly 目录下的 HTML 文档中介绍了此工具的参数。server-install/extras/flexanlg 目录含有用于灵活日志文件格式的命令行日志分析程序。但是,不管选择了何种日志文件格式,Server Manager 在默认情况下都会使用灵活日志文件报告工具。
使用日志分析程序可以生成有关默认服务器的统计数据,例如活动摘要、最常访问的 URL、一天中访问服务器的高峰时段等等。可以从 Proxy Server 或命令行运行日志分析程序。
在尝试运行 flexanlg 命令行实用程序之前必须设置库路径。各种平台的设置如下所示:
Solaris 和 Linux:
LD_LIBRARY_PATH=server_root/bin/proxy/lib:$LD_LIBRARY_PATH
AIX:
LIBPATH=server_root/bin/proxy/lib:$LIBPATH
HP-UX:
SHLIB_PATH=server_root/bin/proxy/lib:$SHLIB_PATH
Windows:
path=server_root\bin\proxy\bin;%path%
注
在运行日志分析程序之前,应将服务器日志归档。有关将服务器日志归档的更多信息,参见归档日志文件。
作为设置库路径的替代方法,还可以先转到 server_root/proxy-serverid 目录,然后在命令提示符处键入 ./start -shell。
如果使用扩展或扩展 2 日志记录格式,则除了指定要报告的信息之外,日志分析程序还会在输出文件内生成多个报告。以下各节将对这些报告进行介绍。
传送时间分配报告
传送时间分配报告显示代理服务器传送请求所花费的时间。此报告显示的信息按服务时间和完成百分比进行分类。下面是传送时间分配报告的一个样例。
By service time category:
< 1 sec [644%] ........................................
< 2 sec [33.3%] ....................
< 3 sec [ 2.7%] .
< 4 sec [ 1.7%] .
< 5 sec [ 0.6%]
< 6 sec [ 0.4%]
< 7 sec [ 0.2%]
< 8 sec [ 0.0%]
< 9 sec [ 0.0%]
By percentage finished:
< 1 sec [64.4%] ........................................
< 2 sec [97.7%] ....................................
< 3 sec [100.4%]..............................................
状态码报告
状态码报告显示代理服务器从远程服务器接收和向客户机发送的状态码及其数目。状态码报告还会对上述所有状态码进行解释说明。下面是状态码报告的一个样例。
Code
-From remote-
-To client-
-Explanation-
200
338 [70.7%]
352 [73.6%]
OK
302
33 [ 6.9%]
36 [ 7.5%]
Redirect
304
90 [18.8%]
99 [20.7%]
Not modified
404
3 [ 0.6%]
3 [ 0.6%]
Not found
407
5 [ 1.0%]
Proxy authorization required
500
2 [ 0.4%]
Internal server error
504
6 [ 1.3%]
Gateway timeout
数据流报告
数据流报告显示从客户机到代理服务器、从代理服务器到客户机、从代理服务器到远程服务器以及从远程服务器到代理服务器的数据流(传送的字节数)。对于上述每种情况,该报告均会显示以标头和内容形式传送的数据量。数据流报告还会显示从高速缓存到客户机的数据流。下面是数据流报告的一个样例。
Headers
Content
Total
- Client -> Proxy.........
0 MB
0 MB
0 MB
- Proxy -> Client...........
0 MB
2 MB
3 MB
- Proxy -> Remote...........
0 MB
0 MB
0 MB
- Remote -> Proxy..........
0 MB
2 MB
2 MB
Approx:
- Cache -> Client...........
0 MB
0 MB
0 MB
请求和连接报告
请求和连接报告显示代理服务器从客户机接收的请求数、代理服务器与远程服务器进行的连接数(初始检索、最新性检查和刷新)以及代理服务器通过使用高速缓存文档避免的远程连接数。下面是请求和连接报告的一个样例。
- Total requests............. 478
- Remote connections......... 439
- Avoided remote connects.... 39 [ 8.2%]
高速缓存性能报告
高速缓存性能报告显示客户机高速缓存、代理服务器高速缓存以及直接连接的性能。
Client Cache
对于客户机的高速缓存,该报告将显示:
- client and proxy cache hits:一种客户机高速缓存命中情况,此时,代理服务器和客户机都具有所请求文档的副本,先通过查询远程服务器针对代理服务器的副本进行最新性检查,然后针对代理服务器的副本对客户机的请求进行评判。高速缓存性能报告将显示代理服务器所服务的此类请求数,以及它为这些请求服务所花费的平均时间。
- proxy shortcut no-check:一种客户机高速缓存命中情况,此时,代理服务器和客户机都具有所请求文档的副本,代理服务器(在未与远程服务器进行核查的情况下)告知客户机:客户机高速缓存中的文档是最新的。高速缓存性能报告将显示代理服务器所服务的此类请求数,以及它为这些请求服务所花费的平均时间。
- client cache hits only:一种客户机高速缓存命中情况,此时,只有客户机具有所请求文档的高速缓存副本。在此类请求中,代理服务器会直接为客户机的 If-modified-since GET 标头建立通信隧道。高速缓存性能报告将显示代理服务器所服务的此类请求数,以及它为这些请求服务所花费的平均时间。
- total client cache hits:客户机高速缓存总命中次数以及代理服务器为这些请求服务所花费的平均时间。
Proxy Cache
当客户机从代理服务器那里请求文档时,如果代理服务器的高速缓存中已有该文档,则代理高速缓存即被命中。对于代理服务器的高速缓存命中,该报告将显示:
- proxy cache hits with check:一种代理高速缓存命中情况,此时,代理服务器通过查询远程服务器对文档进行最新性检查。高速缓存性能报告将显示代理服务器所服务的此类请求数,以及它为这些请求服务所花费的平均时间。
- proxy cache hits without check:一种代理高速缓存命中情况,此时,代理服务器不查询远程服务器以对文档进行最新性检查。高速缓存性能报告将显示代理服务器所服务的此类请求数,以及它为这些请求服务所花费的平均时间。
- pure proxy cache hits:一种代理高速缓存命中情况,此时,客户机不具有所请求文档的高速缓存副本。高速缓存性能报告将显示代理服务器所服务的此类请求数,以及它为这些请求服务所花费的平均时间。
Proxy Cache Hits Combined
对于合并的代理高速缓存命中,该报告将显示:
Direct Transactions
直接事务是指没有命中高速缓存而直接从远程服务器到代理服务器再到客户机的事务。对于直接事务,该报告将显示:
下面是高速缓存性能报告的一个样例。
CLIENT CACHE:
- Client & proxy cache hits... 86 reqs [18.0%] 0.21 sec/req
- Proxy shortcut no-check........ 13 reqs [ 2.7%] 0.00 sec/req
- Client cache hits only.....
- TOTAL client cache hits.......... 99 reqs [20.7%] 0.18 sec/reqPROXY CACHE:
- Proxy cache hits w/check........ 4 reqs [ 0.8%] 0.50 sec/req
- Proxy cache hits w/o check.. 10 reqs [ 2.1%] 0.00 sec/req
- Pure proxy cache hits...... 14 reqs [ 2.9%] 0.14 sec/reqPROXY CACHE HITS COMBINED:
- TOTAL proxy cache hits....... 113 reqs [23.6%] 0.18 sec/req
DIRECT TRANSACTIONS:
- Retrieved documents..313 reqs [65.5%] 0.90 sec/req 2 MB
- Other transactions.. 52 reqs [10.9%] 7.79 sec/req
- TOTAL direct traffic..365 reqs [76.4%] 1.88 sec/req 2 MB
传送时间报告
传送时间报告显示有关代理服务器处理事务所花时间的信息。此报告会显示以下各类值:
average transaction time:记录的所有传送时间的平均值。
average transfer time without caching:并非从高速缓存返回的事务(来自远程服务器的 200 响应)的平均传送时间。
average with caching, without errors:所有无错误事务(2xx 和 3xx 状态码)的平均传送时间。
average transfer time improvement:平均事务时间减去采用高速缓存且未出错情况下的平均传送时间。
下面是传送时间报告的一个样例。
- Average transaction time... 1.48 sec/req
- Ave xfer time w/o caching.. 0.90 sec/req
- Ave w/caching, w/o errors.. 0.71 sec/req
- Ave xfer time improvement.. 0.19 sec/req每小时活动报告
对于所分析的每一个小时,每小时活动报告将显示:
发生如下情况的请求数,即没有命中代理服务器的高速缓存而直接从远程服务器检索文档
从 Server Manager 运行日志分析程序
- 访问 Server Manager,然后单击 "Server Status" 选项卡。
- 单击 "Generate Report" 链接。将显示 "Generate Report" 页面。
- 键入服务器的名称;此名称将出现在所生成的报告中。
- 选择报告将以 HTML 格式还是以 ASCII 格式显示。
- 选择所要分析的日志文件。
- 如果要将结果保存在文件中,请在 "Output File" 字段键入输出文件名。如果将该字段留为空白,报告结果将打印至屏幕。对于大型日志文件,应将结果保存到文件中,因为打印输出到屏幕可能需要很长时间。
- 选择是否为某些服务器统计信息产生合计。可以产生以下合计:
- Total Hits。自启用访问日志记录以来服务器收到的总命中次数。
- 304 (Not Modified) Status Codes。使用所请求文档的本地副本的次数,而不是服务器返回相应页面的次数。
- 302 (Redirects) Status Codes。服务器因原始 URL 转移而重定向到新 URL 的次数。
- 404 (Not Found) Status Codes。服务器找不到所请求文档或服务器因客户机不是授权用户而未提供该文档的次数。
- 500 (Server Error) Status Codes。发生服务器相关错误的次数。
- Total Unique URLs。自启用访问日志记录以来所访问的唯一 URL 数目。
- Total Unique Hosts。自启用访问日志记录以来曾访问过服务器的唯一主机数目。
- Total Kilobytes Transferred。自启用访问日志记录以来服务器所传送的千字节数。
- 选择是否生成常规统计信息。如果选择生成统计信息,请选择以下选项:
- Find Top Number Seconds Of Log。基于最近几秒钟内的信息生成统计信息。
- Find Top Number Minutes Of Log。基于最近几分钟内的信息生成统计信息。
- Find Top Number Hours Of Log。基于最近几小时内的信息生成统计信息。
- Find Number Users (If Logged)。基于此数量的用户的信息生成统计信息。
- Find Top Number Referers (If Logged)。基于此数量的引用者的信息生成统计信息。
- Find Top Number User Agents (If Logged)。基于有关用户代理的信息(例如,浏览器类型、浏览器版本和操作系统)生成统计信息。
- Find Top Number Miscellaneous Logged Items (If Logged)。基于此数量的用户的信息生成统计信息。
- 选择是否生成列表。如果选择了生成列表,请从以下列表中指定要生成列表的项。
- 指定要以何顺序查看结果。按照各部分要在报告中出现的顺序,为以下各项赋予从 1 至 3 的优先级。如果选择不生成其中任何一项优先级,该部分将自动被忽略。包括以下选项:
- 单击 "OK"。报告将显示在新窗口中。
从命令行运行日志分析程序
要从命令行分析访问日志文件,请运行 flexanlg 工具,它位于 server-install/extras/flexanlg 目录。
要运行 flexanlg,请在命令提示符处键入以下命令和选项:
./flexanlg [-n name] [-x] [-r] [-p order] [-i file]* [ -m metafile ]* [-o file][-c opts] [-t opts] [-l opts]
标有 * 的选项可以重复。
下面将介绍语法。(键入 ./flexanlg -h,可以获得相应的英文联机信息。):
-P:代理日志格式 默认值:no
-n servername:服务器的名称
-x:以 HTML 格式输出 默认值:no
-r:将 IP 地址解析为主机名 默认值:no
-p [c,t,l]:输出顺序(计数、时间统计和列表) 默认值:ctl
-i filename:输入日志文件 默认值:none
-o filename:输出日志文件 默认值:stdout
-m filename:元文件 默认值:none
-c [h,n,r,f,e,u,o,k,c,z]:对这些项进行计数 - 默认值:hnreuokc
h:总命中次数
n:"304 Not Modified" 状态码(使用本地副本)
r:"302 Found" 状态码(重定向)
f:"404 Not Found" 状态码(文档未找到)
e:"500 Server Error" 状态码(配置不当)
u:唯一 URL 总数
o:唯一主机总数
k:总传送千字节数
c:高速缓存所保存的总千字节数
z:不对任何项进行计数。
-t [sx,mx,hx, xx,z]:查找时间统计 - 默认值:s5m5h10u10a10r10x10
s(number):查找最近 (number) 秒的日志
m(number):查找最近 (number) 分钟的日志
h(number):查找最近 (number) 小时的日志
u(number):查找最上面 (number) 个用户的日志
a(number):查找最上面 (number) 个用户代理的日志
r(number):查找最上面 (number) 个引用者的日志
x(number):查找最上面 (number) 个杂项关键字
z:不查找任何时间统计。
-l [cx,hx]:生成列表 - 默认值:c+3h5
c(x,+x):最常访问的 URL
(x:仅列出 x 个条目)
(+x:仅当访问过 x 次以上时列出)
h(x,+x):最常访问服务器的主机(或 IP 地址)
(x:仅列出 x 个条目)
(+x:仅当访问过 x 次以上时列出)
z:不生成任何列表。
查看事件 (Windows)除了将错误记录到服务器错误日志之外,Proxy Server 还会将严重的系统错误记录到“事件查看器”中。“事件查看器”可用于监视系统中发生的事件。在打开错误日志之前,可以使用“事件查看器”查看因基础配置问题而引起的错误。
使用“事件查看器”