![]() ![]() ![]() ![]() |
安装 Content Delivery Server 并将其投入生产后,需要确保它的执行情况符合要求。还需要能够分析所显示的信息并对问题做出响应。本节提供帮助您维护 Content Delivery Server 的信息。
Content Delivery Server 提供了用于监视 Content Delivery Server 状态的应用程序监视代理。此代理支持简单网络管理协议 (SNMP) 并可以与现有网络监视系统集成。
Content Delivery Server 组件还在日志文件中记录信息,您可以使用这些信息查看系统状态。
应用程序监视代理提供有关 Content Delivery Server 的状态信息。通过此代理,现有网络监视系统可以监视 Content Delivery Server 组件的可用性。您还可以监视 Content Delivery Server 与外部系统(例如记帐系统或订户数据库)之间的连接。
要激活该代理,请启动监视服务。请参见第 5.1.2 节“启动 Content Delivery Server 服务”。
应用程序监视代理提供用来说明 Content Delivery Server 所发出的状态和警报的管理信息库 (MIB)。此信息包含在 $CDS_HOME/deployment/
deployment-name/conf
目录的 CDS36MibModule.mib
文件中。将您的网络监视系统配置为使用此 MIB 规范。有关装入 MIB 的信息,请参见所使用的网络监视系统的产品文档。
表 27 显示了通过 MIB 提供的状态信息。网络监视系统可以查询应用程序监视代理的任何状态。状态 1 表示该组件正在运行。状态 0 表示该组件已停止工作。
表 28 显示检测到问题时 Content Delivery Server 发出的警报。通常情况下,警报表示特定的组件不可用。应重新启动所指示的组件,以确保 Content Delivery Server 继续正常运行。
执行 Content Delivery Server 时,组件将信息记录到以下日志文件(这些文件位于 $CDS_HOME/deployment/
deployment-name/logs
目录中):
EventService.log
:此日志中的条目是在下载内容和启动记帐功能时由事件服务生成的。MessagingService.log
:此日志中的条目是在将内容推送到订户设备时由消息传送服务生成的。NotifyService.log
:此日志中的条目是在处理通知并将其发送给订户时由通知服务生成的。PostpaidService.log
:此日志中的条目是在处理后付费记帐时由后付费服务生成的。PushListenerService.log
:此日志中的条目是在从订户设备收到消息时由推送监听器服务生成的。ConfirmListenerService.log
:此日志中的条目是在从订户设备收到确认消息时由确认监听器服务生成的。SNMPService.log
:此日志中的条目是在监视服务运行时由它生成的。CDS.log
:此日志中的条目是在用户访问管理控制台、Subscriber Portal 和 Developer Portal 时由 Content Delivery Server 的其余组件生成的。
请检查这些日志是否存在异常、标记为 ERROR
的行或其他问题指示。第 C.4 节“错误消息”提供您可能收到的消息说明及您可以采取的应对措施建议。
当 Content Delivery Server 处于运行状态时,日志文件中将写入条目。缺省情况下,在 Content Delivery Server 停止之前,条目会不断写入每个日志文件。每个日志都将在重新启动 Content Delivery Server 后随之重新启动。如果要保留这些日志的历史记录,应在重新启动 Content Delivery Server 之前创建副本。
Content Delivery Server 使用日志软件包 log4j。可以根据 log4j 的功能,通过设置 $CDS_HOME/deployment/
deployment-name/conf
目录下的 logging.properties
文件中的属性来管理日志文件。有关 log4j 的信息,请访问 Web 站点
http://logging.apache.org/log4j/docs/manual.html。
要控制写入日志的信息量,需要将 logging.properties
文件中的 log4j.rootCategory
属性设置成下列值之一:
Content Delivery Server 旨在与外部记帐系统及订户数据库进行交互。Content Delivery Server 还可以与自己的 Oracle 数据库进行交互。本节介绍组件之间的工作流。
有关将 Content Delivery Server 与外部系统集成的信息,请参见《Sun Java System Content Delivery Server 集成指南》。
Content Delivery Server 支持预付费和后付费记帐模型。对于预付费记帐模式,在允许订户购买和下载内容之前需与记帐系统联系以获取授权。对于后付费记帐模式,事务发生后记帐系统将收到购买信息。
对于预付费记帐实现,Content Delivery Server 会在以下每个事务发生之前与记帐系统联系。记帐系统可以确定是允许还是拒绝该事务。对于后付费记帐实现,以下每个事务发生之后,Content Delivery Server 会生成一个 CDR,其中包含记帐系统根据自身的日程安排处理的信息。
如果将 Content Delivery Server 配置为使用外部订户数据库,则在 Vending Manager 中为每个访问 Subscriber Portal 的订户保留的信息将仅限于订户登录 ID、移动电话号码、设备信息和订户计划。Vending Manager 还保留有关订户的下载历史的信息。要获取订户名和地址等配置信息,Content Delivery Server 将联系外部订户数据库。
如果外部数据库允许 Content Delivery Server 更改订户记录,则 Vending Manager 管理员可以通过 Vending Manager 管理控制台的帐户管理功能来编辑这些配置信息。如果外部数据库不允许 Content Delivery Server 进行更改,则 Vending Manager 管理员将只能查看订户的配置信息。
仅在订户访问 Subscriber Portal 之后才在 Content Delivery Server 中反映订户配置文件。此时,将在 Vending Manager 中创建订户帐户。Vending Manager 管理员可以在不与订户数据库交互的情况下查看所有订户帐户的列表。当管理员打开订户帐户时,Content Delivery Server 将联系订户数据库并检索配置信息。
Content Delivery Server 还将联系外部订户数据库以执行下列任务:
Content Delivery Server 使用 JDBC Type 4 驱动程序与 Oracle 数据库进行通信。除了错误日志与系统配置属性以外,所有 Content Delivery Server 数据都保留在该数据库中。
每次需要通过 Subscriber Portal 或 Developer Portal 向用户显示信息,或者需要通过 Catalog Manager 或 Vending Manager 管理控制台向管理员显示信息时,都将访问该数据库。要最大程度地减少对该数据库的访问,可以指定通过设置 $CDS_HOME/deployment/
deployment-name/conf/cache.config
文件中的 cache.enabled
属性来缓存数据库信息。
Content Delivery Server 具有内置的容错功能,因此可以在数据库出现故障时继续运行。系统发出每个失败事务的错误消息并进行记录,同时 Content Delivery Server 将继续执行操作。
Content Delivery Server 数据库包含由 Content Delivery Server 执行的所有事务的记录。随着时间的推移,包含这些事务的表会变得很大,性能会降低。还应该定期清理数据库中的一些表,以删除不活动的项目。
本节标识了 Content Delivery Server 数据库中应该根据需要监视和删除其中某些项目的表。此外,还应该按照 Oracle 的建议对该数据库执行标准的维护步骤。
下表会随着 Content Delivery Server 中发生的事务数量的增加而增大。您可以对这些表中的某些数据进行归档,以使这些表的大小维持在易于管理的水平。
此表包含订户从特定的 Vending Manager 中购买的所有订阅。此表会相对于订户数量和他们尝试购买的订阅数目的增加而相应增大。为确保使用此内容的订户许可证的完整性,应对该表进行维护。
当订户或他们已购买的内容不再处于活动状态时,可以从该表中清除相应的数据。
此表包含代表任何 Vending Manager 发出的所有下载请求,并且需要对订户尝试的任何后续下载进行授权。由于一种实现模式为所有 Vending Manager 提供服务,因此该表将随着从任何 Vending Manager 购买的订阅数量的增加而增大。
当订户或他们已购买的内容不再处于活动状态时,可以从该表中清除相应的数据。
此表包含 Content Delivery Server 已发出的所有事件。由于有很多事件类型,因此该表会迅速增大。此表中的事件用于报告历史记录。
当不再需要报告历史记录时,可以从该表中清除数据。
该表包含向每个订户发送的所有活动消息。该表将按已执行的活动数量和已收到通知的订户数量的增加成比例增大。只要活动处于活动状态且订户可以从该活动中购买内容,就需要用到这些数据。
活动到期后,可以从该表中清除数据。
此表存储已由订户指定的礼品。
订户被停用后,可以从该表中清除数据。
下表保留了数据实体,例如订户和可下载内容。当实体处于非活动状态时,可以从这些表及其相关的表中删除不使用的记录。
此表包含已使用 Content Delivery Server 的订户的所有订户帐户。如果 Content Delivery Server 与外部订户数据库集成,则对应信息子集将保留在该表中以便其他表(如 SUBSCRIBER_PURCHASE)引用。当订户处于非活动状态时,可以从以下各表中删除相关数据:
CDS_SUBSCRIBER
:名称、地址和其他配置信息。SUBSCRIBER_PLAN_MAP
:为订户指定的订户计划。SUBSCRIBER_PURCHASE
:订户已购买的所有内容。SUBSCRIBER_WISHLIST
:订户在愿望列表中放置的项目。SUBSCRIBER_PREFERENCE
:订户设置的显示首选项。此表包含使用 Content Delivery Server 提交或注册的所有可下载内容。当项目处于非活动状态时,可以从以下各表中删除相关数据:
RESOURCE_CLASS_LOCALE
:相应语言环境的名称和说明。RESOURCE_CONTENT_DATA
:内容的二进制文件。RESOURCE_INSTANCE
:与设备有关的各版。RESOURCE_SCREENSHOT
:内容的屏幕快照。INSTANCE_CAPABILITY_MAP
:内容的功能要求。MODEL_CLASS_INSTANCE_MAP
:内容到设备的映射。CAT_PRICING_MODEL_MAP
:内容的价格模型。CATEGORY_RESOURCE_MAP
:内容所在的类别。此表包含 Vending Manager 的内容。如果内容在目录中不可用,则可以为每个 Vending Manager 删除该内容,并从以下各表中删除相关数据:
CATEGORY_ITEM_MAP
:内容所在的类别。EXTERNAL_CONTENT_MAP
:缓存的内容的文件位置。VEN_PRICING_MODEL_MAP
:内容所使用的价格模型。HANDSET_LOCALE_EDITION_MAP
:内容版所支持的语言环境。操作 Content Delivery Server 期间,日志文件中将写入消息。消息还将通过门户和管理控制台显示给用户。本节介绍 Content Delivery Server 发出的消息并给出应对措施建议。
有关日志文件的信息,请参见第 C.1.2 节“日志文件”。
写入 Content Delivery Server 日志 (CDS.log
) 的消息包括:
[DBPoolManager] ERROR Exception initializing connection pool:com.sun.content.server.jdbc.ConnectionException:Error getting jdbc connection in ConnectionManager.
说明:启动数据库时出现连接故障。
操作:确保 Oracle 正在运行且可以通过 Content Delivery Server 进行访问。确保数据库配置文件包含正确值。有关该文件的信息,请参见第 3.1.2 节“第 2 步:设置基本部署的数据库”。
[DBPoolManager] WARN Removing failed connection:oracle.jdbc.driver.OracleConnection@connectionIdjava.sql.SQLException:Io exception:Connection reset by peer:socket write error
说明:出现数据库连接故障。connectionId 将标识已失败的连接。
操作:确保 Oracle 正在运行且可以通过 Content Delivery Server 进行访问。确保数据库配置文件包含正确值。有关该文件的信息,请参见第 3.1.2 节“第 2 步:设置基本部署的数据库”。
说明:JMS 连接故障(事件)
操作:如果正在运行 Sun Java System Application Server,确保消息传送代理也正在运行。确保部署配置文件 (.cfg
) 包含正确的 JMS 属性值。
[LDAPUserManager:ExecuteThread:'6' for queue:'default'] FATAL Cannot create LDAP context. java.net.UnknownHostException:loadtesting at java.net.InetAddress.getAllByName0(InetAddress.java:566)
说明:Content Delivery Server 无法连接到外部 LDAP 用户系统。
操作:确保 LDAP 系统正在运行且可以访问,然后重试操作。
[Stock] ERROR failed to load url:http://vendingManager/vsadmin/main/admin_autostock?...:vendingManager java.net.UnknownHostException:vendingManager
说明:无法访问 Vending Manager vendingManager。
操作:验证为 Vending Manager 指定的 IP 地址是否正确以及是否可以从 Catalog Manager 进行访问。确保 Vending Manager 正在对网络请求做出响应。
说明:用户无权访问该页面。permissionError 将提供附加信息。
操作:重新登录并重试操作。
com.sun.content.server.server.web.util.WebMsgException:Could not get UserManager.Could not load the usermanager class
说明:订户尝试登录到 Subscriber Portal,但 Content Delivery Server 无法连接至外部 LDAP 用户系统。
操作:确保 LDAP 系统正在运行且可以访问,然后重试操作。
写入消息传送服务日志 (MessagingService.log
) 的消息包括:
[MsgServer] ERROR Failed to initialize JMS Connection java.net.ConnectException:t3://hostname:port:Destination unreachable; nested exception is:java.net.ConnectException:Connection refused:connect; No available router to destination[MsgServer] INFO Will Retry to initialize JMS Connection in 60 seconds
说明:Content Delivery Server 未正确启动或者消息传送服务正在运行时有人关闭了 Content Delivery Server。
操作:确保正确启动 Content Delivery Server。同时确保部署配置文件 (.cfg
) 包含正确的 JMS
属性值。
说明:指示已成功恢复 JMS 连接的说明性消息。
操作:无需采取操作。
[MsgServer ] ERROR Exception caught com.sun.content.server.server.msgserver.protocolPpgConnectionFailedException:Failed to connect to wap ppg server
说明:MsgService.properties
文件中的 WAP PPG 属性可能不正确,或者 PPG 已关闭。
操作:确保 MsgService.properties
文件中正确设置了 WAP PPG 属性,而后重新启动消息传送服务。同时确保 WAP PPG 处于打开状态且正在运行。
[MsgServer] ERROR Error while sending SMS Push message java.net.ConnectException:Connection refused:connect
说明:MsgService.properties
文件中的推送发送器 SMSC 属性可能不正确或者 SMSC 已关闭。如果正在使用基于 HTTP 的 SMSC 服务发送 SMS,则 SubscriberConsole.properties
文件中的 SMSC 属性可能不正确。
操作:确保 MsgService.properties
文件中正确设置了 SMSC 属性。如果正在使用基于 HTTP 的 SMSC 服务来发送 SMS,确保 SubscriberConsole.properties
文件中正确设置了 SMSC 属性,而后重新启动消息传送服务。同时确保 SMSC 处于打开状态且正在运行。
写入推送监听器服务日志 (PushListenerService.log
) 的消息包括:
[MsgServer] ERROR Connection could not be established java.net.UnknownHostException[MsgServer] ERROR FAILED TO CONNECT TO SMSC [MsgServer] INFO Will try to reconnect after 60000 milliseconds
说明:PushListener.properties
文件中的推送监听器 SMSC 属性可能不正确或者 SMSC 已关闭。
操作:确保 PushListener.properties
文件中正确设置了推送监听器 SMSC 属性,而后重新启动推送监听器服务。同时确保 SMSC 处于打开状态且正在运行。
说明:SMSC 的连接已中断或 SMSC 已关闭。
操作:确保 SMSC 正在运行且可以访问。
说明:pushListener.properties
文件中没有正确指定 SMSC 主机名。
操作:确保 PushListener.properties
文件中正确设置了 SMSC 主机名,而后重新启动 PushListener 服务。
说明:pushListener.properties
文件中没有正确指定 SMSC 端口号。
操作:确保 PushListener.properties
文件中正确设置了 SMSC 端口号,而后重新启动 PushListener 服务。
写入确认监听器服务日志 (ConfirmListenerService.log
) 的消息包括:
说明:ConfirmListener.properties
中的端口号可能不正确,或该端口号正忙。
操作:确保将确认监听器服务设置为通过正确的端口号进行监听,且 ConfirmListener.properties
中指定的端口号可用。重新启动确认监听器服务。
写入通知服务日志 (NotifyService.log
) 的消息包括:
说明:处理订户登录名 login-name 时失败。可能的原因包括无法连接外部数据库或无法从中收到授权,或者订户的设备无法运行活动中包含的内容。未向此订户发送通知。
操作:如果数据库存在问题,请进行更正并重新提交活动。将会向满足条件的所有订户重新发送通知。
说明:指定的消息太长并且已由系统截断。订户将收到截断的消息。
操作:无需采取操作。
说明:处理订户 ID subscriber-ID 时失败。可能的原因包括电话号码或电子邮件地址不正确,或存在网络问题。未向此订户发送通知。
操作:如果网络存在问题,请进行更正并重新提交活动。将会向满足条件的所有订户重新发送通知。
![]() ![]() ![]() ![]() |
安装指南 Sun Java™ System Content Delivery Server,版本 2004Q1 |
版权所有 © 2004 Sun Microsystems, Inc. 保留所有权利。必须依据许可证条款使用。