开启userenv.log分析故障
计算机启动缓慢,一般都会优化注册表里的开机运行选项,比如用windows优化大师就非常方便。但是效果不一定明显,如果开启启动日志,那就有可以针对性优化了。
该项功能默认情况下并没有开启,需要修改注册表。以下是微软提供的信息:
http://support.microsoft.com/kb/221833
使用注册表编辑器添加或修改(如果值已经存在)下面的注册表值:
注册表项:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
值:UserEnvDebugLevel
数值类型:REG_DWORD
数值数据:10002(十六进制)
UserEnvDebugLevel 可以是以下值:
NONE 0x00000000
NORMAL 0x00000001
VERBOSE 0x00000002
LOGFILE 0x00010000
DEBUGGER 0x00020000
默认值是 NORMAL|LOGFILE (0x00010001)。
注意:要禁用日志,请选择 NONE(值为 0X00000000)。
您也可以将这些值组合起来。例如,将 VERBOSE 0x00000002 和 LOGFILE 0x00010000 组合起来,便可得到 0x00010002。因此,如果您将 UserEnvDebugLevel 的值设置为 0x00010002,将同时打开 LOGFILE 和 VERBOSE。将这些值组合起来与使用 OR 语句具有相同的效果:
0x00010000 OR 0x00000002 = 0x00010002
注意:如果设置了 UserEnvDebugLevel = 0x00030002,则会在 Userenv.log 文件中记录最为详细的信息。
该日志文件会被写入 %Systemroot%\Debug\UserMode\Userenv.log 文件中。如果 Userenv.log 已存在并且大于 300 KB,则现有文件将重命名为 Userenv.bak,同时创建一个新的日志文件。
-----------------------------------------------------------------
userenv格式说明
USERENV(f30.f34) | 16:31:59:890 | LibMain: | Process Name:C:\WINDOWS\system32\logonui.exe |
日志文件中的每一条表项都以USERENV开始,(acc.ad0)表示处理代码。 | 表示处理时间 | 表示处理名称。 | 表示处理事件简述。 |
在分析该日志时,首先看相邻两条记录的时间差,如果差值比较大,就需要注意了,这往往是启动慢的问题所在。