Share via


Gateway Trace Information

Gateway Trace Information

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 PR_TRACE_INFO property stores a TRACEINFO structure that contains external trace information about a message. PR_TRACE_INFO helps a gateway or message transfer agent (MTA) determine the path that a message has traveled. This information is critical for preventing message delivery loops. A TRACEINFO structure consists of a set of TRACEENTRY structures in chronological order.

The following table lists the members of a TRACEINFO structure:

Member Type Description
cEntries Long Number of TRACEENTRY structures.
rgtraceentry[ ] TRACEENTRY Array of TRACEENTRY structures.

Each TRACEENTRY structure in the TRACEINFO structure contains the following members:

Member Type Description
lAction Long Routing action taken by the tracing domain. The following actions are possible: expanded, redirected, relayed, and rerouted.
ftArrivalTime Filetime Time at which the message entered the tracing domain.
ftDeferredTime Filetime Time at which the tracing domain released the message.
rgchADMDName[17] Char Administration Management Domain (ADMD) name of the tracing domain.
rgchCountryName[4] Char Country/region name of the tracing domain.
rgchPRMDId[17] Char Private Management Domain (PRMD) identifier (ID) of the tracing domain.
rgchAttADMDName[17] Char Attempted domain ADMD name. Contains information if the attempt to send failed and message was rerouted.
rgchAttCountryName[4] Char Attempted domain country/region name. Contains information if the attempt to send failed and the message was rerouted.
rgchAttPRMDId[17] Char Attempted domain PRMD Identifier. Contains information if the attempt to send failed and the message was rerouted.

As a minimum requirement, each time a gateway submits an incoming message to Microsoft® Exchange Server it should create a TRACEENTRY that contains the following:

  • An action
  • An arrival time
  • A deferred time
  • The country/region code of the local domain
  • The ADMD of the local domain
  • The PRMD of the local domain

If the foreign system supports similar trace information, the gateway can either translate the trace information or drop it when transferring outgoing messages to the foreign domain.

You can use the following utility functions to manipulate message tracing information:

Function Action
HrTraceGetEntryListSize Retrieves the size of the TRACEINFO in memory, in bytes.
HrTraceGetEntryList Retrieves the TRACEINFO for the given message.
HrTraceCreateEntryList Creates a TRACEENTRY for the given message.
HrTraceAppendEntryList Appends a TRACEENTRY to an existing TRACEINFO.
HrTraceSetEntryList Sets the TRACEINFO for the given message.

The MAPI utility functions use the following structures:

Structure Description
TRACEENTRY Information for one trace.
TRACEINFO Array of all TRACEENTRY structures for one message.

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.