How to Change Logging Levels for Exchange Processes
Microsoft Exchange Server 2007 will reach end of support on April 11, 2017. To stay supported, you will need to upgrade. For more information, see Resources to help you upgrade your Office 2007 servers and clients.
Applies to: Exchange Server 2007, Exchange Server 2007 SP1
This topic explains how to change the diagnostic logging level for Exchange Server processes to assist with troubleshooting issues that may occur in an Microsoft Exchange Server 2007 environment.
In the release to manufacturing (RTM) version of Exchange 2007 and in Exchange 2007 Service Pack 1 (SP1), you can use the Exchange Management Shell or Registry Editor to change the diagnostic logging level. However, in Exchange Service Pack 2 (SP2) you can also use the Manage Diagnostic Logging Properties wizard in the Exchange Management Console to complete the same task.
The possible logging levels that you can set are: 0 (Lowest), 1 (Low), 3 (Medium), 5 (High), and 7 (Expert). You can use either the numbers or the name in the Exchange Management Shell. The default logging level is 0 (Lowest). You should always return the logging level to the default setting after completing your troubleshooting activities.
Changing the process logging level for a given process may not yield additional events in the Event log. Many variables affect whether a change to the process logging level setting will increase the number of events. These variables include, but are not limited to, the actions being performed by the process and the number of events implemented in the source code for the logging level selected.
Before You Begin
Before you perform the following procedure, you must perform the actions in one of the following sections based on whether you are running Exchange 2007 RTM, Exchange 2007 SP1, or Exchange 2007 SP2.
For more information about permissions, delegating roles, and the rights that are required to administer Exchange 2007, see Permission Considerations.
Permissions for Exchange 2007 SP2
To perform the following procedure in Exchange 2007 SP2, the account you use must be delegated the following:
- Exchange Server Administrator role and membership in the local Administrators group for the target server
Permissions for Exchange 2007 SP1 and Exchange 2007 RTM
To perform the following procedure in Exchange 2007 SP1 and Exchange 2007 RTM, the account you use must be delegated the following:
- Membership in the local Administrator group
Procedure
Exchange 2007 SP2
To use the Exchange Management Console to change the logging level for an Exchange process
Start the Exchange Management Console.
In the console tree, click Server configuration or any other server container.
In the action pane, click Manage Diagnostic Logging Properties. The Manage Diagnostic Logging Properties wizard appears.
On the Configure Server Diagnostic Logging Properties page, click Update logging levels for services.
In the list of logging levels, expand the service for which you want to set the logging level.
Select the property for which you want to set the logging level.
Under the list of logging levels, select one of the following logging level options: Lowest, Low, Medium, High, or Expert.
Repeat steps 5 and 6 for each service for which you want to set the logging level.
Click Configure.
On the Completion page, confirm that diagnostic logging was configured correctly. A status of Completed indicates that the wizard completed the task successfully. A status of Failed indicates that the task was not completed. If the task fails, review the summary for an explanation, and then click Back to make any configuration changes.
Click Finish to complete the Manage Diagnostic Logging Properties wizard.
To use the Exchange Management Shell to change the logging level for an Exchange process
To identify the all the processes that have configurable logging levels, including their current settings, run the following command.
Get-EventLogLevel
To identify the current logging level of a specific process, run the following command.
Get-EventLogLevel <process>
To change the logging level of a specific process, run the following command.
Set-EventLogLevel <process> -Level <level>
To verify that the logging level has been changed, run the following command.
Get-EventLogLevel <process>
Replace <level> with the level word or number. For example:
Set-EventLogLevel MSExchangeMU\General -Level Medium
Note
Processes that have spaces in their names, like MSExchangeIS\9002 System\Virus Scanning, must be enclosed in quotation marks. For example: "MSExchangeIS\9002 System\Virus Scanning"
Note
You can get additional information about a process by adding the "|fl" variable, without quotation marks, to the get command. For example:
Get-EventLogLevel <process> |fl
NoteAfter you complete your troubleshooting activities, set the logging level back to the default level.
For detailed syntax and parameter information, seeGet-EventLogLevelSet-EventLogLevel.
To use Registry Editor to change the logging level for an Exchange process
Start Registry Editor (regedit).
Warning
Incorrectly editing the registry can cause serious problems that may require you to reinstall your operating system. Problems resulting from editing the registry incorrectly may not be able to be resolved. Before editing the registry, back up any valuable data.
Locate the following registry key: HKLM\SYSTEM\CurrentControlSet\Services\MSExchangeMU\Diagnostics
In the details pane, change the Value data of the General key to the new value.
Exit Registry Editor.
Note
After you complete your troubleshooting activities, set the logging level back to the default level.
Exchange 2007 SP1 and Exchange 2007 RTM
To use the Exchange Management Shell to change the logging level for an Exchange process
To identify the all the processes that have configurable logging levels, including their current settings, run the following command.
Get-EventLogLevel
To identify the current logging level of a specific process, run the following command.
Get-EventLogLevel <process>
To change the logging level of a specific process, run the following command.
Set-EventLogLevel <process> -Level <level>
To verify that the logging level has been changed, run the following command.
Get-EventLogLevel <process>
Replace <level> with the level word or number. For example:
Set-EventLogLevel MSExchangeMU\General -Level Medium
Note
Processes that have spaces in their names, like MSExchangeIS\9002 System\Virus Scanning, must be enclosed in quotation marks. For example: "MSExchangeIS\9002 System\Virus Scanning"
Note
You can get additional information about a process by adding the "|fl" variable, without quotation marks, to the get command. For example:
Get-EventLogLevel <process> |fl
NoteAfter you complete your troubleshooting activities, set the logging level back to the default level.
For detailed syntax and parameter information, seeGet-EventLogLevelSet-EventLogLevel.
To use Registry Editor to change the logging level for an Exchange process
Start Registry Editor (regedit).
Warning
Incorrectly editing the registry can cause serious problems that may require you to reinstall your operating system. Problems resulting from editing the registry incorrectly may not be able to be resolved. Before editing the registry, back up any valuable data.
Locate the following registry key: HKLM\SYSTEM\CurrentControlSet\Services\MSExchangeMU\Diagnostics
In the details pane, change the Value data of the General key to the new value.
Exit Registry Editor.
Note
After you complete your troubleshooting activities, set the logging level back to the default level.
For More Information
For a list of the Exchange 2007 processes for which logging levels are configurable, see Processes with Configurable Event Logging Levels.