Message Tracking File XML Schema

Message Tracking File XML Schema

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

The Microsoft® Exchange Server 2003 message tracking features enable administrators to track messages passing through the Exchange transports. Message tracking makes it simpler to diagnose message transfer problems and to verify that the Exchange routing configuration is functioning properly. Exchange administrators can use Microsoft Windows® Management Instrumentation (WMI) to access the Exchange_MessageTrackingEntry Class programmatically, or use the Exchange System Manager to track messages interactively. When using the Exchange System Manager, you can also save the tracking results to an XML file. This topic lists the elements of the message tracking XML files.

Example Message Tracking XML File

The following example shows a message tracking XML file containing one entry.

<TrackHistory xmlns="https://www.microsoft.com/schemas/MessageTracking">
  <Exchange_MessageTrackingEntry>
    <TimeLogged>2002-2-6 16:50:23</TimeLogged>
    <OriginationTime>2002-2-6 16:50:23</OriginationTime>
    <KeyID>\\computer.example.com\ExchSvrComputer.log\20020206.log,338</KeyID>
    <LinkedMessageID>c=us;a= ;p=computer;l=ExchSvrComputer-020206165023Z-1</LinkedMessageID>
    <MessageID>873E056A4FC076469C84B37F96E8751D8DF1@computer.example.com</MessageID>
    <SenderAddress>
      EX:/O=EXAMPLE/OU=FIRST ADMINISTRATIVE GROUP/CN=RECIPIENTS/CN=SenderAddress1
    </SenderAddress>
    <ServerName>computer.example.com</ServerName>
    <EntryType>1027</EntryType>
    <RecipientCount>1</RecipientCount>
    <Priority>0</Priority>
    <Size>358</Size>
    <Recipients>
      <Recipient>
        <RecipientAddress>
          /O=EXAMPLE/OU=FIRST ADMINISTRATIVE GROUP/CN=RECIPIENTS/CN=RecipientAddress1
        </RecipientAddress>
        <RecipientStatus>0</RecipientStatus>
      </Recipient>
      <Recipient>
        <RecipientAddress>
          /O=EXAMPLE/OU=FIRST ADMINISTRATIVE GROUP/CN=RECIPIENTS/CN=RecipientAddress2
        </RecipientAddress>
        <RecipientStatus>0</RecipientStatus>
      </Recipient>
    </Recipients>
  </Exchange_MessageTrackingEntry>
</TrackHistory>

Using the Message Tracking Files

Message Tracking files created by the Exchange System Manager do not include an XML processing element. If the XML parser is unable to parse the data correctly, you may need to add a processing statement similar to the following, before passing the tracking information to the parser:

<?xml version="1.0" encoding="utf-8"?>

If the message tracking file uses a different character encoding standard, substitute the correct encoding value for "utf-8" in the XML processing statement.

You can also attach a custom XSL style sheet to the file by adding a second processing statement similar to the following:

<?xml-stylesheet type="text/xsl" href="MessageTracking.xsl"?>

Microsoft Internet Explorer 6 and later can automatically apply the XSL style sheet to the XML data.

Message Tracking File Elements

Each Exchange_MessageTrackingEntry element in the message tracking file provides information about a single message that was transferred. The specific type of transfer that occurred determines which child elements are included. The child elements correspond to the WMI properties available in the Exchange_MessageTrackingEntry Class. Some elements will be present for each entry. For example, TimeLogged Property and RecipientCount Property. The Exchange System Manager outputs only those properties that have data. The following table depicts the format of the message tracking XML file. To read more about the corresponding WMI properties, click the links in the following table.

XML Element Number Allowed Notes
<TrackHistory> 1 Container for the list of message tracking entries.
  <Exchange_MessageTrackingEntry> 1..n Container for each individual entry.
    <KeyID/> 1 The KeyID Property.
    <AttemptedPartnerServer/> 0..1 The AttemptedPartnerServer Property.
    <ClientIP/> 0..1 The ClientIP Property.
    <ClientName/> 0..1 The ClientName Property.
    <Cost/> 0..1 The Cost Property.
    <DeliveryTime/> 0..1 The DeliveryTime Property.
    <Encrypted/> 0..1 The Encrypted Property.
    <EntryType/> 0..1 The EntryType Property.
    <ExpansionDL/> 0..1 The ExpansionDL Property.
    <LinkedMessageID/> 0..1 The LinkedMessageID Property.
    <MessageID/> 1 The MessageID Property.
    <OriginationTime/> 0..1 The OriginationTime Property.
    <PartnerServer/> 0..1 The PartnerServer Property.
    <Priority/> 0..1 The Priority Property.
    <RecipientCount/> 1 The RecipientCount Property.
    <Recipients> 1 Container for the recipient elements.
      <Recipient> 1..n Container for a single recipient.
        </RecipientAddress> 1 The Microsoft Active Directory® address of a single recipient from the array returned in the RecipientAddress Property.
        </RecipientStatus> 1 The type of the message that was sent to the recipient, taken from the array returned in the RecipientStatus Property.
      </Recipient>    
    </Recipients>    
    <SenderAddress/> 1 The SenderAddress Property.
    <ServerIP/> 0..1 The ServerIP Property.
    <ServerName/> 1 The ServerName Property.
    <Size/> 1 The Size Property.
    <Subject/> 0..1 The Subject Property.
    <SubjectID/> 1 The SubjectID Property.
    <TimeLogged/> 1 The TimeLogged Property.
    <Version/> 1 The Version Property.
  </Exchange_MessageTrackingEntry>    
</TrackHistory>    

The Number Allowed column can contain the following:

  • "1" indicates that the element will always be present, and there will be only one of that element.
  • "1..n" indicates that the element will always be present, and there can be any number of that element.
  • "0..1" indicates that the element is optional. If the element is present, there will be only one of that element.
  • "0..n" indicates that the element is optional. If the element is present, there can be any number of that element.

Recipients

Notice that the recipient address and recipient status properties have different structures in the XML message tracking file than they have as WMI properties. In the WMI properties, the RecipientAddress and RecipientStatus properties return separate arrays. Each element in the two arrays provides the recipient address and status. In the XML file, the corresponding recipient address and status values are contained within a Recipient element.

For example, consider the following example addresses and status values:

RecipientCount = 3
RecipientAddress = ("User1","User2","User3")
RecipientStatus = (0,0,0)
			

When stored in a message tracking XML file, those addresses and status values would appear as follows:

<RecipientCount>3</RecipientCount>
<Recipients>
  <Recipient>
    <RecipientAddress>User1</RecipientAddress>
    <RecipientStatus>0</RecipientStatus>
  </Recipient>
  <Recipient>
    <RecipientAddress>User2</RecipientAddress>
    <RecipientStatus>0</RecipientStatus>
  </Recipient>
  <Recipient>
    <RecipientAddress>User3</RecipientAddress>
    <RecipientStatus>0</RecipientStatus>
  </Recipient>
</Recipients>
			

Send us your feedback about the Microsoft Exchange Server 2003 SDK.

Build: June 2007 (2007.618.1)

© 2003-2006 Microsoft Corporation. All rights reserved. Terms of use.