Applies to: Exchange Server 2010 SP3, Exchange Server 2010 SP2
Topic Last Modified: 2012-07-23
Protocol logging records the SMTP conversations that occur between e-mail servers as part of message delivery. These SMTP conversations occur on Send connectors and Receive connectors configured on servers running Microsoft Exchange Server 2010 that have the Hub Transport server role or the Edge Transport server role installed. You can use protocol logging to diagnose mail flow problems.
By default, protocol logging is disabled on all Send connectors and Receive connectors. Protocol logging is enabled or disabled on a per-connector basis. Other protocol logging options are set on a per-connector type basis for the whole server. All the Receive connectors on a Hub Transport server or an Edge Transport server share the same protocol log files and protocol log options. These protocol log files and protocol log options are separate from the Send connector protocol log files and protocol log options that are on the same server. By default, Exchange 2010 uses circular logging to limit the protocol logs based on file size and file age to help control the hard disk space used by the protocol log files.
Looking for other management tasks related to transport logs? Check out Managing Transport Logs.
Caution: |
---|
Don't perform this procedure on an Edge Transport server that has been subscribed to the Exchange organization by using EdgeSync. Instead, make the changes on the Hub Transport server. The changes are then replicated to the Edge Transport server next time EdgeSync synchronization occurs. |
Enable or disable protocol logging on connectors
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Receive connectors" and "Send connectors" entries in the Transport Permissions topic.
Use the EMC to enable or disable protocol logging on connectors
- Perform one of the following steps:
- To modify an existing Receive connector on an Edge Transport
server, in the console tree, select Edge Transport, and then
in the work pane, click the Receive Connectors tab.
- To modify an existing Receive connector on a Hub Transport
server, expand Server Configuration in the console tree, and
select Hub Transport. In the result pane, select the server
that has the Receive connector that you want to modify, and then
click the Receive Connectors tab.
- To modify an existing Receive connector on an Edge Transport
server, in the console tree, select Edge Transport, and then
in the work pane, click the Receive Connectors tab.
- In the work pane, select the Receive connector to modify.
- Under the name of the Receive connector in the action pane,
click Properties to open the Properties page.
- Click the General tab and use the drop-down box next to
Protocol logging level to enable or disable protocol
logging. None disables protocol logging, and Verbose
enables protocol logging.
- After you make your protocol logging selection, click
Apply to save changes and remain on the Properties
page, or click OK to save changes and exit the
Properties page.
The procedure is similar for Send connectors. To access Send connectors, you navigate to Organization Configuration > Hub Transport.
Use the Shell to enable or disable protocol logging on connectors
This example enables protocol logging for the Receive connector Connection from Contoso.com.
Copy Code | |
---|---|
Set-ReceiveConnector "Connection from Contoso.com" -ProtocolLoggingLevel Verbose |
The procedure is similar for Send connectors. For Send connectors, you use the Set-SendConnector cmdlet.
For detailed syntax and parameter information, see Set-ReceiveConnector or Set-SendConnector.
Enable or disable protocol logging for the intra-organization Send connector
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Hub Transport server" entry in the Transport Permissions topic.
Note: |
---|
You can't use the EMC to enable or disable protocol logging for the intra-organization Send connector. |
A special Send connector named the intra-organization Send connector exists on every Hub Transport server. This connector is implicitly created, invisible, and requires no management. The intra-organization Send connector is used to relay messages to the following destinations:
- To other Hub Transport servers in the Exchange organization
- To Exchange Server 2003 servers in the Exchange
organization
- To Edge Transport servers in the Exchange organization
By default, protocol logging for the intra-organization Send connector is disabled. You can enable or disable protocol logging for the intra-organization Send connector by using the Set-TransportServer cmdlet.
This example enables protocol logging on the intra-organization Send connector on a Hub Transport server.
Copy Code | |
---|---|
Set-TransportServer "Exchange01" -IntraOrgConnectorProtocolLoggingLevel Verbose |
For detailed syntax and parameter information, see Set-TransportServer.
Configure the location of the protocol log files
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Hub Transport server" and "Edge Transport server" entries in the Transport Permissions topic.
By default, the Receive connector protocol log files are located at C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\ProtocolLog\SmtpReceive, and the Send connector protocol log files are located at C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\ProtocolLog\SmtpSend. The directory must be local to the Exchange 2010 computer.
Use the EMC to change the location of the Receive connector protocol log files
- Perform one of the following steps:
- On a computer that has the Edge Transport server role
installed, select Edge Transport, and then in the action
pane, click the Properties link that's directly under the
server name.
- On a computer that has the Hub Transport server role installed,
in the console tree, expand Server Configuration, and select
Hub Transport. In the action pane, click the
Properties link that's directly under the server name.
- On a computer that has the Edge Transport server role
installed, select Edge Transport, and then in the action
pane, click the Properties link that's directly under the
server name.
- On the Properties page, click the Log Settings
tab.
- In the Protocol log section, click Browse next to
Receive connector protocol log file path.
- In the Browse for folder window, browse to the new
location where you want to store the Receive connector protocol log
files. If you want to create a folder, select a parent folder,
click Make New Folder, and then type the name of the new
folder. After you make your folder selection, click OK to
close the Browse for folder window.
- Click Apply to save changes and remain on the
Properties page, or click OK to save changes and exit
the Properties page.
Use the Shell to change the location of the Receive connector protocol log files
This example sets the Receive connector protocol log directory to C:\Receive SMTP Log on the Exchange 2010 computer Exchange01.
Copy Code | |
---|---|
Set-TransportServer Exchange01 -ReceiveProtocolLogPath "C:\Receive SMTP Log" |
For detailed syntax and parameter information, see Set-TransportServer.
Use the EMC to change the location of the Send connector protocol log files
- Perform one of the following steps:
- On a computer that has the Edge Transport server role
installed, select Edge Transport, and then in the action
pane, click the Properties link that's directly under the
server name.
- On a computer that has the Hub Transport server role installed,
in the console tree, expand Server Configuration, and select
Hub Transport. In the action pane, click the
Properties link that's directly under the server name.
- On a computer that has the Edge Transport server role
installed, select Edge Transport, and then in the action
pane, click the Properties link that's directly under the
server name.
- On the Properties page, click the Log Settings
tab.
- In the Protocol log section, click Browse next to
Send connector protocol log file path.
- In the Browse for folder window, browse to the new
location where you want to store the Send connector protocol log
files. If you want to create a folder, select a parent folder,
click Make New Folder, and then type the name of the new
folder. After you make your folder selection, click OK to
close the Browse for folder window.
- Click Apply to save changes and remain on the
Properties page, or click OK to save changes and exit
the Properties page.
Use the Shell to change the location of the Send connector protocol log files
This example sets the Send connector protocol log directory to C:\Send SMTP Log on the Exchange 2010 computer Exchange01.
Copy Code | |
---|---|
Set-TransportServer Exchange01 -SendProtocolLogPath "C:\Send SMTP Log" |
Setting the value of the SendProtocolLogPath
parameter or ReceiveProtocolLogPath parameter to
$null
disables protocol logging for all Send
connectors or all Receive connectors on the server. However,
setting either of these parameters to $null
when
protocol logging is enabled for any Send connector, including the
intra-organization Send connector, or Receive connector on the
server generates event log errors. The preferred method of
disabling protocol logging is to use the Set-SendConnector
or Set-ReceiveConnector cmdlets to set the
ProtocolLoggingLevel parameter to None
. Also,
you can use the Set-TransportServer cmdlet to set the
IntraOrgProtocolLoggingLevel parameter to
None
.
For detailed syntax and parameter information, see Set-TransportServer.
Configure the maximum size of each protocol log file
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Hub Transport server" and "Edge Transport server" entries in the Transport Permissions topic.
Note: |
---|
You can't use the EMC to configure the maximum size of each protocol log file. |
By default, the maximum size for each protocol log file is 10 MB. All Receive connectors on the server share the same protocol log files, and all Send connectors on the server share the same protocol log files. When a protocol log file reaches its maximum size, Exchange 2010 opens a new protocol log file. This process continues until either of the following conditions is true:
- The protocol log directory reaches its specified maximum size.
For more information about how to change the maximum size of the
protocol log directory, see "Configure the maximum size of the
protocol log directory" later in this topic.
- A protocol log file reaches its specified maximum age. For more
information about how to change the maximum age of a protocol log
file, see "Configure the maximum age of the protocol log files"
later in this topic.
After the maximum size or age limit is reached, circular logging deletes the oldest protocol log files.
This example sets the maximum size of Receive connector protocol log files to 20 MB on the Exchange 2010 computer Exchange01.
Copy Code | |
---|---|
Set-TransportServer Exchange01 -ReceiveProtocolLogMaxFileSize 20MB |
This example sets the maximum size of Send connector protocol log files to 20 MB on the Exchange 2010 computer Exchange01.
Copy Code | |
---|---|
Set-TransportServer Exchange01 -SendProtocolLogMaxFileSize 20MB |
For detailed syntax and parameter information, see Set-TransportServer.
Configure the maximum size of the protocol log directory
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Hub Transport server" and "Edge Transport server" entries in the Transport Permissions topic.
Note: |
---|
You can't use the EMC to configure the maximum size of the protocol log directory. |
By default, the maximum size for the protocol log directory is 250 MB. All Receive connectors on the server share the same protocol log directory, and all Send connectors on the server share the same protocol log directory. Circular logging deletes the oldest protocol log files when either of the following conditions is true:
- The protocol log directory reaches its specified maximum
size.
- A protocol log file reaches its specified maximum age.
This example sets the maximum size of the Receive connector protocol log directory to 400 MB on the Exchange 2010 computer Exchange01.
Copy Code | |
---|---|
Set-TransportServer Exchange01 -ReceiveProtocolLogMaxDirectorySize 400MB |
This example sets the maximum size of the Send connector protocol log directory to 400 MB on the Exchange 2010 computer Exchange01.
Copy Code | |
---|---|
Set-TransportServer Exchange01 -SendProtocolLogMaxDirectorySize 400MB |
For detailed syntax and parameter information, see Set-TransportServer.
Configure the maximum age of the protocol log files
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Hub Transport server" and "Edge Transport server" entries in the Transport Permissions topic.
Note: |
---|
You can't use the EMC to configure the maximum age of the protocol log files. |
By default, the maximum age for any protocol log file is 30 days. All Receive connectors on the server share the same protocol log files, and all Send connectors on the server share the same protocol log files. Circular logging deletes the oldest protocol log files if either of the following conditions is true:
- The protocol log directory reaches its specified maximum
size.
- A protocol log file reaches its specified maximum age.
This example sets the age limit of the Receive connector protocol log files to 45 days on the Exchange 2010 computer Exchange01.
Copy Code | |
---|---|
Set-TransportServer Exchange01 -ReceiveProtocolLogMaxAge 45.00:00:00 |
This example sets the age limit of the Send connector protocol log files to 45 days on the Exchange 2010 computer Exchange01.
Copy Code | |
---|---|
Set-TransportServer Exchange01 -SendProtocolLogMaxAge 45.00:00:00 |
To specify an age value, enter the value as a time
span: dd.hh:mm:ss, where d = days,
h = hours, m = minutes, and
s = seconds. The valid input range for this
parameter is from 00:00:00 through 24855.03:14:07. Setting the
value of the ReceiveProtocolLogMaxAge parameter or the
SendProtocolLogMaxAge parameter to 00:00:00
prevents the automatic removal of protocol log files because of
their age.
For detailed syntax and parameter information, see Set-TransportServer.