How to enable user environment debug logging in retail builds of Windows
This article was previously published under Q221833
The versions of Microsoft Windows that are listed in the "Applies to" section let you modify the registry to turn on debug logging of the user profile and the Windows system policy processes. You can also use this logging to track down problems that are related to the start of Desktop Standard PolicyMaker client-side extensions (CSEs). Debug logging functionality is also available in Microsoft Windows NT 4.0. However, in Windows NT 4.0, this functionality requires a checked (debug) build of the Userenv.dll file.
For more information, click the following article number to view the article in the Microsoft Knowledge Base:
154120 Debugging user profiles and system policies in Windows NT 4.0You can use debug logging output to troubleshoot problems with user profiles and Group Policy processing.
Important This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:
322756 How to back up and restore the registry in Windows
Use Registry Editor to add or to modify the following registry entry:
Subkey:UserEnvDebugLevel can have the following values:
Value data: 10002 (Hexadecimal)
Value data: 10002 (Hexadecimal)
NONE 0x00000000The default value is NORMAL|LOGFILE (0x00010001).
Note To disable logging, select NONE (0x00000000).
You can combine these values. For example, you can combine VERBOSE 0x00000002 and LOGFILE 0x00010000 to get 0x00010002. Therefore, if UserEnvDebugLevel is given a value of 0x00010002, LOGFILE and VERBOSE are both turned on. Combining these values is the same as using an OR statement.
0x00010000 OR 0x00000002 = 0x00010002Note If you set UserEnvDebugLevel to 0x00030002, the most verbose details are logged in the Userenv.log file.
The log file is written to the %Systemroot%\Debug\UserMode\Userenv.log file. If the Userenv.log file is larger than 300 KB, the file is renamed Userenv.bak, and a new Userenv.log file is created. This action occurs when a user logs on locally or by using Terminal Services, and the Winlogon process starts. However, because the size check only occurs when a user logs on, the Userenv.log file may grow beyond the 300 KB limit.
Although the 300-KB limit cannot be modified, you can set the read-only attribute on the Userenv.bak file, and the Userenv.log file will grow indefinitely. You must only use this method temporarily, remove the read-only attribute on the Userenv.bak file as soon as you are finished troubleshooting.
enable tracing logging
Article ID: 221833 - Last Review: 09/11/2011 06:53:00 - Revision: 14.0
PolicyMaker Standard 2.0, PolicyMaker Standard 1.0, Microsoft Windows Server 2003, Standard Edition (32-bit x86), Microsoft Windows Server 2003, Enterprise Edition (32-bit x86), Microsoft Windows Server 2003, Datacenter Edition (32-bit x86), Microsoft Windows Server 2003, Standard x64 Edition, Microsoft Windows Server 2003, Enterprise x64 Edition, Microsoft Windows Server 2003, Datacenter x64 Edition, Microsoft Windows XP Professional, Microsoft Windows 2000 Professional Edition, Microsoft Windows 2000 Server, Microsoft Windows 2000 Advanced Server
- kbhowto KB221833