Eventlog 密钥

事件日志包含以下标准日志和自定义日志:

日志 说明
应用程序 包含应用程序记录的事件。 例如,数据库应用程序可能会记录文件错误。 应用程序开发人员决定要记录的事件。
安全性 包含有效和无效登录尝试等事件,以及与资源使用相关的事件,例如创建、打开或删除文件或其他对象。 管理员可以开始审核以记录安全日志中的事件。
系统 包含系统组件记录的事件,例如驱动程序或其他系统组件在启动期间加载失败的事件。
CustomLog 包含由创建自定义日志的应用程序记录的事件。 使用自定义日志,应用程序可以控制日志的大小,或出于安全目的附加 ACL,而不会影响其他应用程序。

事件日志记录服务使用 Eventlog 注册表项中存储的信息。 Eventlog 密钥包含多个子项,称为日志。 每个日志都包含事件日志记录服务在应用程序写入事件日志并从中读取时用于查找资源的信息。

Eventlog 键的结构如下所示:

HKEY_LOCAL_MACHINE
   SYSTEM
      CurrentControlSet
         Services
            Eventlog
               Application
               Security
               System
               CustomLog

请注意,域控制器记录目录服务和文件复制服务日志中的事件,以及 DNS 服务器记录 DNS 服务器中的事件。

每个日志可以包含以下注册表值。

注册表值 说明
CustomSD 限制对事件日志的访问。 此值的类型为 REG_SZ。 所使用的格式是 安全描述符定义语言 (SDDL) 。 构造一个 ACL,该 ACL 授予以下一个或多个权限:
清除 (0x0004)
读取 (0x0001)
写入 (0x0002)
要成为语法有效的 SDDL,CustomSD 值必须指定所有者和组所有者 (例如 O:BAG:SY) ,但不使用所有者和组所有者。 如果 CustomSD 设置为错误值,则事件日志服务启动时会在系统事件日志中触发事件,并且事件日志获取的默认安全描述符,该描述符与应用程序日志的原始 CustomSD 值相同。 不支持 SCL。
有关详细信息,请参阅 事件日志记录安全性
Windows Server 2003:支持 SCL。
Windows XP/2000:不支持此值。

DisplayNameFile 不使用此值。 Windows Server 2003 和 Windows XP/2000:存储事件日志本地化名称的文件的名称。 此文件中存储的名称显示为事件查看器中的日志名称。 如果事件日志的注册表中未显示此项,事件查看器会将注册表子项的名称显示为日志名称。 此值的类型为 REG_EXPAND_SZ。 默认值为 %SystemRoot%\system32\els.dll。
DisplayNameID 不使用此值。 Windows Server 2003 和 Windows XP/2000:日志名称字符串的消息标识号。 此数字指示出现本地化显示名称的消息。 消息存储在 DisplayNameFile 值指定的文件中。 此值的类型为 REG_DWORD。
File 存储每个事件日志的文件的完全限定路径。 这使事件查看器和其他应用程序能够查找日志文件。 此值的类型为 REG_SZ 或 REG_EXPAND_SZ。 此值是可选的。 如果未指定该值,则默认为 %SystemRoot%\system32\winevt\logs\,后跟基于事件日志注册表项名称的文件名。应使用命令行实用工具wevtutil.exe或使用 EvtSetChannelConfigProperty 函数和传递给 PropertyId 参数的 EvtChannelLoggingConfigLogFilePath 来设置特定的事件日志文件路径。
如果设置了特定文件,请确保事件日志服务对该文件具有完全权限。
此值必须是位于本地目录的文件的有效文件名, (不是远程计算机、DOS 设备、软盘,也不是管道) 。 如果文件设置错误,则事件日志服务启动时会在系统事件日志中触发事件。
请勿在文件的路径中使用环境变量,该文件不能在事件日志服务的上下文中展开。
Windows Server 2003 和 Windows XP/2000:此值默认为 %SystemRoot%\system32\config\,后跟基于事件日志注册表项名称的文件名。 如果将“文件”设置设置为无效值,则日志将不会正确初始化,否则所有请求将以无提示方式转到默认日志 (应用程序) 。
MaxSize 日志文件的最大大小(以字节为单位)。 此值的类型为 REG_DWORD。 该值必须设置为系统、应用程序或安全日志的 64K 的倍数。 默认值为 1MB。Windows Server 2003 和 Windows XP/2000:该值限制为0xFFFFFFFF,默认值为 512K。
PrimaryModule 不使用此值。Windows Server 2003 和 Windows XP/2000:此值是子项的名称,其中包含事件源的子项的默认值。 此值的类型为 REG_SZ。
保留 此值的类型为 REG_DWORD。 默认值为 0。 如果此值为 0,则始终覆盖事件记录。 如果此值0xFFFFFFFF或任何非零值,则永远不会覆盖记录。 当日志文件达到其最大大小时,必须手动清除日志;否则,将丢弃新事件。 在更改日志大小之前,还必须清除日志。Windows Server 2003 和 Windows XP/2000:此值是时间间隔(以秒为单位)保护事件记录不被覆盖。 当事件期限达到或超过此值时,可以覆盖该值。
不使用此值。 Windows Server 2003 和 Windows XP/2000:将事件写入此日志的应用程序、服务或应用程序组的名称。 此值应仅读取且不更改。 事件日志服务基于日志下子项中列出的每个程序维护列表。 此值的类型为 REG_MULTI_SZ。
AutoBackupLogFiles 此值的类型为 REG_DWORD,由事件日志服务用来确定是否应自动保存事件日志。 默认值为 0,用于禁用自动备份。 仅当保留值为 -1 (0xFFFFFFFF) 时,服务才会备份日志文件。 其他值将被忽略。Windows Server 2003:可将保留期设置为 -1 (0xFFFFFFFF) 或 1 (0x00000001) ,以便自动备份LogFiles 正常工作。 其他值将被忽略。
RestrictGuestAccess 不使用此值。 Windows XP/2000:此值的类型为 REG_DWORD,默认值为 1。 当该值设置为 1 时,它会限制来宾和匿名帐户对事件日志的访问,如果此值为 0,则允许来宾帐户访问事件日志。
隔离 定义日志的默认访问权限。 此值的类型为 REG_SZ。 可以指定以下值之一:
  • 应用程序
  • 系统
  • 自定义
默认隔离为 应用程序应用程序的默认权限是使用 SDDL) 显示的 (:
            L"O:BAG:SYD:"            L"(A;;0xf0007;;;SY)"                // local system               (read, write, clear)            L"(A;;0x7;;;BA)"                    // built-in admins            (read, write, clear)            L"(A;;0x7;;;SO)"                    // server operators           (read, write, clear)            L"(A;;0x3;;;IU)"                    // INTERACTIVE LOGON          (read, write)            L"(A;;0x3;;;SU)"                    // SERVICES LOGON             (read, write)            L"(A;;0x3;;;S-1-5-3)"               // BATCH LOGON                (read, write)            L"(A;;0x3;;;S-1-5-33)"              // write restricted service   (read, write)            L"(A;;0x1;;;S-1-5-32-573)";         // event log readers          (read) 
系统的默认 权限是使用 SDDL) 显示的 (:
            L"O:BAG:SYD:"            L"(A;;0xf0007;;;SY)"                // local system             (read, write, clear)            L"(A;;0x7;;;BA)"                    // built-in admins          (read, write, clear)            L"(A;;0x3;;;BO)"                    // backup operators         (read, write)            L"(A;;0x5;;;SO)"                    // server operators         (read, clear)             L"(A;;0x1;;;IU)"                    // INTERACTIVE LOGON        (read)            L"(A;;0x3;;;SU)"                    // SERVICES LOGON           (read, write)            L"(A;;0x1;;;S-1-5-3)"               // BATCH LOGON              (read)            L"(A;;0x2;;;S-1-5-33)"              // write restricted service (write)            L"(A;;0x1;;;S-1-5-32-573)";         // event log readers        (read)
自定义隔离的默认权限与应用程序相同。
Windows Server 2003 和 Windows XP/2000:此值不可用。

每个日志还包含事件源。 有关详细信息,请参阅 事件源