Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » QAnywhere » QAnywhere 参考 » 服务器管理请求参考 » 服务器管理请求父标记

 

MessageDetailsReport 标记

每个消息详细信息报告都是一条 XML 消息,其中包含 <MessageDetailsReport> 标记,并由报告标题后接可选的 <message> 标记组成。每个报告的标题由以下标记组成:

<MessageDetailsReport> 子标记

说明

<message>

报告的正文由一列 <message> 标记组成,这些 <message> 标记的子标记显示符合选择条件的每条消息的特定详细信息。如果未选择任何消息或者在原始请求中未指定任何详细信息元素,则报告中不包括任何 <message> 标记。否则,每条消息都有自己的 <message> 标记。

<messageCount>

满足请求的选择条件的消息数。

<requestId>

生成报告的请求的 ID。

<statusDescription>

生成此报告的原因的简短说明。

<UTCDateline>

生成此报告的时间和日期。

消息标记
<message> 子标记 说明
<address> 消息的地址。例如,myclient\myqueue。
<contentSize> 消息内容的大小。如果消息是文本消息,则为字符数。如果是二进制消息,则为字节数。
<expires> 消息过期的日期和时间(如果不发送)。
<kind> 表示该消息是二进制消息 (1) 还是文本消息 (2)。
<messageId> 新消息的消息 ID。请参见消息标头
<originator> 消息发出方的消息存储库 ID。
<priority> 消息优先级:0 到 9 之间的一个整数,其中 0 表示最低优先级,9 表示最高优先级。
<property> 消息的属性。请参见消息属性
<status> 消息的当前状态。这些状态代码是在预定义的消息属性中定义的。
<statusTime> 消息转为其当前状态的时间。此时间为本地时间。
<transmissionStatus>

消息的同步状态。此值可以是以下各项之一:

  • 0 - 消息尚未传输到其预期的接收者消息存储库。
  • 1 - 消息已经传输到其预期的接收者消息存储库。
  • 2 - 接收者消息存储库和源消息存储库相同,无需传输。
  • 3 - 消息已经传输到其预期的接收者,但此传输有待确认。有可能消息传输中断,而 QAnywhere 可能再次传输此消息。
示例

以下是消息详细信息报告的一个示例:

<?xml version="1.0" encoding="UTF-8"?>
<MessageDetailsReport>
 <requestId>testReport</requestId>
 <UTCDatetime>Mon Jan 16 15:03:04 EST 2006</UTCDatetime>
 <statusDescription>Scheduled report</statusDescription>
 <messageCount>1</messageCount>
 <message>
  <messageId>ID:26080b8927f83f9722357eab0a0628eb</messageId>
  <status>60</status>
  <property>
   <name>myPropName</name>
   <value>myPropVal</value>
  </property>
 </message>
</MessageDetailsReport>

以下 condition 在选择消息时依据的搜索条件是:(msgId=ID:144...OR msgId=ID225...) AND(status=待执行)AND(kind=文本消息)AND(包含值为 'myVal' 的属性 'myProp')

<condition>
 <messageId>ID:144d7e44dc2d7e1d</messageId>
 <messageId>ID:22578sd5dsd99s8e</messageId>
 <status>1</status>
 <kind>text</kind>
 <property>myProp=myVal</property>
</condition>

一次性请求是已忽略 <schedule> 标记的请求。这些请求用于生成单个报告,并在报告发送后删除。此请求生成一个报告,该报告显示当前在服务器上优先级为 9 的所有消息的消息 ID、状态和目标地址。

<?xml version="1.0" encoding="UTF-8"?>
<actions>
 <MessageDetailsRequest>
  <request>
   <requestId>testRequest</client>
   <condition>
    <priority>9</priority>
   </condition>
   <messageId/>
   <status/>
   <address/>
  </request>
 </MessageDetailsRequest>
</actions>

以下消息详细信息请求示例生成一个包括消息 ID 和消息状态的报告。

<?xml version="1.0" encoding="UTF-8"?>
<actions>
  <MessageDetailsRequest>
    <!-- ... -->
    <messageId />
    <status />
  </MessageDetailsRequest>
</actions>