Sun Java System Web Server 7.0 管理员指南

第 13 章 监视服务器

本节介绍 Sun Java System Web Server 的监视功能,并提供了您可以在实例和配置级别上进行监视的服务器参数的详细列表。

Sun Java System Web Server 的监视功能

选择“监视”父选项卡下的“配置”或“实例”选项卡后,将显示可以监视的服务器参数。

从 Sun Java System Web Server 管理控制台,您可以执行以下操作:

要在配置级别监视服务器参数,请单击“监视”>“配置”选项卡。表中列出了可用配置以及以下信息:

单击配置名称以获取配置级别的统计信息。常规统计信息分为 3 种类型:

通过管理控制台进行监视

在管理控制台中,可以查看以下类别的服务器统计信息:

表 13–1 监视类别

类别

说明

常规统计信息 

“常规统计信息”显示配置的全部请求、错误和响应统计信息。 

实例统计信息 

“实例统计信息”显示配置的全部请求、错误和响应统计信息以及有关服务器崩溃和虚拟服务器计数的信息。 

虚拟服务器统计信息 

“虚拟服务器统计信息”显示配置的全部请求、错误和响应统计信息,以及打开的连接数和已接收/传输的总字节数。 

Procedure查看统计信息

  1. 单击“监视”选项卡。

  2. 从配置列表中选择相应的配置。

  3. 查看常规、实例和虚拟服务器统计信息。


    注 –

    使用 CLI

    可以使用 get-config-statsget-virtual-serevr-statsget-webapp-statsget-servlet-stats 命令监视服务器。

    • wadm> get-config-stats --user=admin --password-file=admin.passwd --host=localhost --port=8989 --config=test --node=cat.test.com --ssl=true

      以上命令将获取指定实例的统计信息。要在配置级别获取统计信息,可以使用不包含 --node 选项的上述命令。

    • wadm> get-vs-stats --user=admin --password-file=admin.passwd --host=localhost --port=8989 --config=test --vs=www.test.com --node=cat.test.com --ssl=true

      以上命令将获取部署了指定配置的所有节点中该配置的聚合虚拟服务器统计信息。要获取指定节点中部署的配置的统计信息,可以使用 --node 选项。

    • wadm> get-webapp-stats --user=admin --password-file=admin.passwd --host=localhost --port=8989 --config=test --node=cat.test.com --vs=www.test.com --uri=/foo --ssl=true

      以上命令将获取指定实例的指定虚拟服务器中部署的指定 Web 应用程序的统计信息。要获取部署了指定配置的所有节点中配置的聚合 Web 应用程序统计信息,可以使用不包含 --node 选项的上述命令。

    • wadm> get-servlet-stats --user=admin --password-file=admin.pwd --host=localhost --port=8989 --config=test --node=cat.test.com --vs=www.test.com --uri=/servlet-simple --ssl=true

      以上命令将获取 servlet servlet-simple 的统计信息。


修改监视参数

服务器通过 SNMP 执行监视操作。SNMP 是用于交换有关网络活动的数据的协议。利用 SNMP,数据可以在被管理设备和网络管理站 (Network Management Station, NMS) 之间进行传输。被管理设备即运行 SNMP 的任何设备:主机、路由器、Web 服务器和网络上的其他服务器。NMS 是用于远程管理网络的计算机。NMS 软件通常以图形的方式来显示收集的数据,或使用这些数据确保服务器在特定的参数值范围内运行。

NMS 通常是安装有一个或多个网络管理应用程序的功能强大的工作站。网络管理应用程序(例如 HP OpenView)以图形方式显示有关被管理设备(例如 Web 服务器)的信息。例如,它可能显示您企业中的服务器打开或关闭情况,或者收到的错误消息的数量和类型。将 SNMP 与 Sun Java System Web Server 配合使用时,此信息将通过使用两种类型的代理(子代理主代理)在 NMS 和服务器之间传输。

子代理收集有关服务器的信息,并将这些信息传送给服务器的主代理。每个 Sun Java System Web Server(Administration Server 除外)都具有子代理。


注 –

对 SNMP 配置进行任何更改后,必须单击“保存”按钮,然后重新启动 SNMP 子代理。


要更改配置的设置,请执行以下任务:

  1. 单击配置选项卡。

  2. 选择需要更改监视设置的配置。

  3. 单击监视设置子选项卡。

配置监视参数

要更改某个配置的常规监视设置,请在“常规设置”部分下编辑相应的值。下表提供了常规监视参数的字段说明:

表 13–2 字段说明 > 常规监视设置

字段

说明

SNMP 子代理

一般而言,要使用 SNMP,必须在系统上安装并运行一个主代理和至少一个子代理。启用子代理之前,您需要先安装主代理。

选择此选项可以启用/禁用 SNMP 子代理。 

时间间隔

轮询时间间隔是显示的统计信息相继两次更新之间的间隔秒数。 

如果您的服务器实例正在运行并已启用统计信息功能,您将看到一个显示了选定统计信息类型的页面。该页面每隔 5 至 15 秒更新一次,这取决于您选定的轮询时间间隔。 

分析

您可以使用统计信息/分析功能监视服务器的当前活动。统计信息显示了服务器正在处理的请求数目以及这些请求的处理情况。您可以查看各个虚拟服务器的某些统计信息,也可以查看整个服务器实例的其他统计信息。 

选择此选项可以启用/禁用分析。 

配置 SNMP 子代理参数

要更改某个配置的 SNMP 子代理设置,请在“SNMP 子代理设置”部分下编辑相应的值。下表提供了 SNMP 子代理参数的字段说明:

表 13–3 字段说明 > SNMP 子代理设置

字段

说明

已启用

一般而言,要使用 SNMP,必须在系统上安装并运行一个主代理和至少一个子代理。启用子代理之前,您需要先安装主代理。

选择此选项可以启用/禁用 SNMP 统计信息收集。 

主机

输入服务器(仅限 UNIX)的名称和域。

说明

输入服务器的简短说明,其中包括操作系统信息。 

组织

输入代表组织的简短名称。 

位置

在此字段中输入服务器的位置信息。 

联系

在此字段中输入服务器的联系信息。 

配置 SNMP 子代理

SNMP 是用于交换有关网络活动的数据的协议。利用 SNMP,数据可以在被管理设备和网络管理站 (Network Management Station, NMS) 之间进行传输。被管理设备即运行 SNMP 的任何设备:主机、路由器、Web 服务器和网络上的其他服务器。NMS 是用于远程管理网络的计算机。NMS 软件通常以图形的方式来显示收集的数据,或使用这些数据确保服务器在特定的参数值范围内运行。

NMS 通常是安装有一个或多个网络管理应用程序的功能强大的工作站。网络管理应用程序(例如 Sun Management Center)以图形方式显示有关被管理设备(例如 Web 服务器)的信息。例如,它可能显示您的企业中服务器的打开或关闭情况,或者收到的错误消息的数量和类型。将 SNMP 与 Sun Java System Web Server 配合使用时,通过使用两种类型的代理(子代理主代理),这些信息将在 NMS 和服务器之间进行传输。

子代理收集有关服务器的信息,并将这些信息传送给服务器的主代理。

要启动 SNMP 子代理,请执行以下步骤:

  1. 单击节点选项卡

  2. 单击节点列表中的可用节点。

  3. 单击 SNMP 子代理选项卡

  4. 单击启动 SNMP 子代理按钮以启动子代理。


注 –

启动 SNMP 子代理之前,请验证主代理是否正在运行。仅在主代理运行时才能启动子代理。


要停止 SNMP 子代理,请执行以下步骤:

  1. 单击节点选项卡

  2. 单击节点列表中的可用节点。

  3. 单击 SNMP 子代理选项卡

  4. 单击停止 SNMP 子代理按钮以停止子代理。

一般而言,要使用 SNMP,必须在系统上安装并运行一个主代理和至少一个子代理。启用子代理之前,您需要先安装主代理。

设置 SNMP 的过程因系统而异。下表概述了在不同情况下要执行的过程。稍后将在本章详细介绍实际过程。

开始前,应当验证两件事情:

有关如何验证此信息的说明,请参见您的系统文档。


注 –

在更改了 Administration Server 中的 SNMP 设置、安装了新的服务器或删除了现有服务器后,您必须执行以下步骤:


表 13–4 一般准则

如果服务器满足以下条件

请执行以下过程

  • 当前没有运行本地代理

  1. 启动主代理。

  2. 为系统上安装的每个服务器启用子代理。

  • 本地代理当前正在运行

  • 无 SMUX

  • 不需要继续使用本地代理

  1. 为 Administration Server 安装主代理时,请停止本地代理。

  2. 启动主代理。

  3. 为系统上安装的每个服务器启用子代理。

  • 本地代理当前正在运行

  • 无 SMUX

  • 需要继续使用本地代理

  1. 安装代理 SNMP Agent。

  2. 启动主代理。

  3. 启动代理 SNMP Agent。

  4. 使用主代理端口号以外的其他端口号重新启动本地代理。

  5. 为系统上安装的每个服务器启用子代理。

  • 本地代理当前正在运行

  • 支持 SMUX

  1. 重新配置 SNMP 本地代理。

  2. 为系统上安装的每个服务器启用子代理。

使用 CLI 配置 SNMP

Procedure激活 Solaris 上的 SNMP

  1. 配置 SNMP 参数。

    设置配置的 SNMP 参数。


    wadm> set-snmp-prop --user=admin --host=funland --port=1893 
    --config=test enabled=true master-host=masterhost-name organization=organization-name 
    location=location-name contact=contact-name description=description-name
  2. 部署配置。


    wadm> deploy-config --user=admin --password-file=admin.pwd 
    --host=serverhost --port=8989 config1
  3. 启动服务器实例。


    $ ./https-test/bin/startserv
  4. 以超级用户身份运行主代理 (magt)。


    注 –

    要运行 magt,必须停止本地 snmpd。



    $ cd /etc/init.d/
    		   $ init.dmi stop; init.snmpdx stop; init.sma stop

    删除 https-admserv/config/logs/pid.masteragt 文件(如果存在)。


    $ rm ./https-admserv/config/logs/pid.masteragt
        	   wadm>  start-snmp-master-agent --snmp-port 161 hostname
  5. 启动子代理。

    删除 https-admserv/config/logs/pid.httpagt 文件(如果存在)。


    $ rm ./https-admserv/config/logs/pid.httpagt

    如果 httpagt 已在运行,请将其中止


    wadm> start-snmp-subagent hostname

Procedure激活 Linux 上的 SNMP

  1. 配置 SNMP 参数。

    设置配置的 SNMP 参数。


    wadm> set-snmp-prop --user=admin --host=funland --port=1893 --config=test 
    enabled=true master-host=masterhost-name organization=organization-name 
    location=location-name contact=contact-name description=description-name
  2. 部署配置。


    wadm deploy-config --user=admin --password-file=admin.pwd 
    --host=serverhost --port=8989 config1
  3. 启动服务器实例。


    $ ./https-test/bin/startserv
  4. 以超级用户身份运行本地主代理 (snmpd)。

    要与 snmpd 直接通信,请在 /etc/snmp/snmpd.conf 中添加以下行并重新启动 snmpd。

    smuxpeer 1.3.6.1.4.1.42.2.190.1

    view systemview included .1.3.6.1.4.1.42.2.190.1


    # cd /etc/init.d/
          # ./snmpd stop
          # ./snmpd start
  5. 启动子代理。

    删除 https-admserv/config/logs/pid.httpagt 文件(如果存在)。


    $ rm ./https-admserv/config/logs/pid.httpagt

    如果 httpagt 已在运行,请将其中止


    wadm> start-snmp-subagent hostname

Procedure激活 Windows 上的 SNMP

  1. 配置 SNMP 参数。

    设置配置的 SNMP 参数。


    wadm> set-snmp-prop --user=admin --host=funland --port=1893 --config=test 
    enabled=true master-host=masterhost-name organization=organization-name 
    location=location-name contact=contact-name description=description-name
  2. 向系统路径环境变量中添加 install-root/lib 目录。

  3. 重新启动计算机。

  4. 使用“Windows 服务”选项启动 Web Server 实例。

  5. 启动 SNMP 服务。

Procedure配置基于对等点的主代理 (magt)

通过执行以下步骤,可以配置基于对等点的主代理以与 Solaris 10 和 Linux 上的 OS 本地主代理集成。


注 –

Solaris 10 OS 本地主代理为 snmpd。默认情况下,此主代理在 SNMP 默认 UDP 端口 161 上运行,可以使用 /etc/sma/snmp/snmpd.conf 文件对其进行配置。该文件提供用于将请求/响应转发到其他主代理或子代理的代理指令。有关更多信息,请参阅 snmpd.conf 手册页。

对于 Solaris 8 和 9,不能与 OS 本地主代理 snmpd 进行完整的集成。对于 linux,httpagt 可以直接与 snmpd 集成。在这种情况下,无需运行 magt。对于 Windows,Sun Java System Web Server snmp 库直接与 Windows SNMP 服务通信。


  1. 可以通过指定在上面的节点中提到的 SNMP 端口 (11161) 启动主代理程序。

  2. 向 Solaris 10 的 /etc/sma/snmp/snmpd.conf 中添加以下内容。


    proxy -v 1 -c public myserver:11161 .1.3.6.1.4.1.42.2.190.1
  3. 重新启动 snmpd。


    # cd /etc/init.d
    # init.dmi stop; init.snmpdx stop; init.sma stop
    # init.dmi start; init.snmpdx start; init.sma start
  4. 要获取 SNMP 数据,可以对端口使用 snmpwalk:


    $ snmpwalk -c public -v 1 <host-name>:<port> 1.3.6.1.4.1.42.2.190.1

设置服务器的日志记录

Administration Server 日志文件记录了有关服务器的数据,包括遇到的错误类型以及有关服务器访问的信息。这些日志提供了遇到的错误类型以及特定文件被访问的时间等数据,通过查看这些日志可以监视服务器的活动并排除故障。

可以使用管理控制台中的“日志首选项”页面指定管理服务器日志中记录的数据的类型和格式。例如,可以选择记录有关访问管理服务器的每个客户机的数据,也可以忽略某些客户机。此外,您还可以选择通用日志格式,它提供固定数量的服务器信息,也可以创建更符合您要求的自定义日志文件格式。

日志类型

日志类型大致可分为:

  1. 访问日志-访问日志记录了有关对服务器的请求以及服务器的响应的信息。

  2. 服务器日志-服务器日志列出了自创建日志文件以来服务器所遇到的所有错误。它还包含有关服务器的信息消息,如服务器何时启动以及谁试图登录服务器但未成功。

查看访问日志和服务器日志

在以上命令中,start-date 和 end-date 选项应采用格式-dd/MM/yyyy:HH:mm:ss。也可以自定义日期格式。可以使用 rcfile 中的 wadm_log_date_format 变量指定您自己的日期格式,而不使用默认日期格式。

配置日志参数

要为某个配置启用和编辑日志设置,请执行以下步骤:

  1. 单击配置选项卡

  2. 选择需要启用/编辑日志设置的配置。

  3. 单击常规设置 > 日志设置选项卡

编辑访问日志首选项

下表介绍了“访问日志首选项”部分中的字段:

表 13–5 字段说明 > 编辑访问日志首选项

字段

说明

访问日志

已启用/已禁用。默认情况下,已启用访问日志。选择该选项可以禁用访问日志。请注意,启用访问日志将会稍微降低服务器性能。

文件位置

访问日志文件存储位置的服务器路径。默认值为 ../logs/access

日志格式

  1. 使用通用日志格式-此选项是日志文件的默认格式类型。服务器将记录从请求标头中提取的相关性最高的信息。

    通用日志格式为 IP address — user [date] “request” status content-length

  2. 仅记录以下详细信息-使用此选项可以仅记录请求标头中的特定值。请从以下值中选择:

    • 客户机主机名

    • 系统日期

    • HTTP 状态

    • HTTP 标头

    • HTTP 方法

    • 查询字符串

    • 虚拟服务器名

    • 经过验证的用户名

    • 完整的 HTTP 请求

    • 内容长度

    • 请求 URI

    • 协议

编辑服务器日志首选项

下表介绍了“服务器日志首选项”部分中的字段:

表 13–6 字段说明 > 编辑服务器日志首选项

字段

说明

服务器日志位置

存储服务器日志文件的服务器路径。默认值为 ../logs/errors

日志详尽程度

该选项为您提供了一种设置日志粒度的好方法。对于测试和调试 Web 应用程序,建议将日志级别设置为 finest

对于生产环境,建议将日志级别设置为 failuresecuritycatastrophe 日志级别记录的信息量最少。

记录虚拟服务器名

如果选择此选项,则在记录错误的同时,还会记录处理请求的虚拟服务器名称。 

记录到系统日志中

将所有消息都记录到系统日志中。 

记录到控制台中

如果选择此选项,则会记录由已部署 Web 应用程序引发的异常(如果写入控制台)。

默认情况下,启用该选项。 

日期格式

用于将时间戳附加到错误消息的时间格式。默认值为 [%d/%b/%Y:%H:%M:%S]

将日志文件归档

您可以将日志文件设置为自动归档。在某个特定时间或指定的间隔后,服务器将轮转您的访问日志。服务器会保存旧的日志文件,并用包含了保存日期和时间的名称来标记所保存的文件。

例如,您可以将文件设置为每小时轮转一次,则服务器将保存文件并将其命名为 "access.199907.0152400",其中“名称|年|月|日|24 小时制时间”连接在一起构成一个字符串。根据所设置的日志轮转类型,访问日志归档文件的实际格式会有所不同。

访问日志轮转在服务器启动时进行初始化。如果启用轮转,服务器将创建一个带有时间戳的访问日志文件并在服务器启动时开始进行轮转。

轮转开始后,当出现需要记录到访问日志文件的请求且该请求的出现发生在之前安排的“下次轮转时间”之后时,服务器将创建一个新的带有时间戳的访问日志文件。

设置日志轮转

您可以使用日志轮转选项为配置的实例创建错误/访问日志轮转的进度表。要设置日志轮转,请执行以下步骤:

  1. 单击配置选项卡

  2. 选择需要启用/编辑日志设置的配置。

  3. 单击常规设置 > 日志设置选项卡

  4. 单击日志归档部分下的新建按钮

以下部分介绍新建日志轮转页面中的字段:

表 13–7 字段说明 > 设置日志轮转

字段

说明

事件

访问日志轮转/服务器日志轮转。选择这些选项中的任何一个或两个选项可以配置相应日志类型的轮转。

时间

配置的事件启动时间。从下拉式框中选择小时和分钟值。 

每天-每天在指定的时间启动指定的事件。

特定日期-在特定日期启动指定的事件。

1. 星期几-指定从星期日至星期六的任意一天。

2. 日期-指定一个月中从 1 日至 31 日间的任意一天(以逗号分隔条目)。例如,4,23,9。

特定月份-在特定时间和月份启动指定的事件。指定从一月至十二月之间的月份。

时间间隔

每隔此时间段即启动指定的事件。 

1. 间隔小时数-从下拉式框中选择小时数。

2. 间隔秒数-从下拉式框中选择秒数。

如果您需要删除安排的日志轮转,请在日志归档部分中单击删除按钮。

配置 Administration Server 的日志设置

管理服务器记录所有使用管理控制台执行的配置更改。记录的某些常见操作包括创建新配置、创建虚拟服务器和配置实例设置。但是,配置级别详细信息(例如,访问 Web 应用程序或访问 Web 应用程序时引发的异常)则由相应配置单独记录。

Procedure修改服务器日志位置

  1. 单 击 Administration Server > 常规选项卡。

  2. 转至“日志首选项”部分。

  3. 编辑“服务器日志位置”字段。

    用于存储错误的日志位置。提供用于维护日志文件的有效服务器路径。还将检查管理服务器在 UNIX 系统的指定目录中是否具有写入权限。

    默认位置为 ../log/errors

Procedure修改日志详尽程度

  1. 单击 Administration Server > 常规选项卡。

  2. 转至日志首选项部分。

  3. 选择“日志详尽程度”。

    该选项为您提供了一种设置日志粒度的好方法。对于测试和调试,建议将日志级别设置为 finest

    对于生产环境,建议将日志级别设置为 failuresecuritycatastrophe 日志级别记录的信息量非常少。

Procedure修改日志的日期格式

  1. 单击 Administration Server > 常规选项卡。

  2. 转至日志首选项部分。

  3. 编辑“日期格式”字段。

    用于将时间戳附加至错误消息的时间格式。默认值为 [%d/%b/%Y:%H:%M:%S]