如何配置 Active Directory 和 LDS 诊断事件日志记录

本分步文章介绍如何在 Microsoft Windows Server 操作系统中配置 Active Directory 诊断事件日志记录。

适用于:Windows Server 2022、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2、Windows Server 2012
原始 KB 编号: 314980

摘要

Active Directory 将事件记录到目录服务或 LDS 实例登录事件查看器。 可以使用日志中收集的信息来帮助诊断和解决可能的问题,或监视服务器上与 Active Directory 相关的事件的活动。

默认情况下,Active Directory 仅记录目录服务日志中的关键事件和错误事件。 若要将 Active Directory 配置为记录其他事件,必须通过编辑注册表来提高日志记录级别。

Active Directory 诊断事件日志记录

管理 Active Directory 诊断日志记录的注册表项存储在以下注册表子项中。

域控制器: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics
Lds: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<LDS instance name>\Diagnostics

子项下的Diagnostics以下REG_DWORD值都表示可写入事件日志的事件类型:

  1. 知识一致性检查器 (KCC)
  2. 安全事件
  3. ExDS 接口事件
  4. MAPI 接口事件
  5. 复制事件
  6. 垃圾回收
  7. 内部配置
  8. 目录访问
  9. 内部处理
  10. 性能计数器
  11. 初始化/终止
  12. 服务控制
  13. 名称解析
  14. 备份
  15. 现场工程
  16. LDAP 接口事件
  17. 安装
  18. 全局编录
  19. 站点间消息传送
  20. 组缓存
  21. Linked-Value 复制
  22. DS RPC 客户端
  23. DS RPC 服务器
  24. DS 架构
  25. 转换引擎
  26. 基于声明的访问控制
  27. PDC 密码更新通知

日志记录级别

可以为每个条目分配一个介于 0 到 5 之间的值,此值确定记录的事件的详细级别。 日志记录级别描述为:

  • 0 (无) :此级别仅记录关键事件和错误事件。 这是所有条目的默认设置,仅当发生要调查的问题时,才应修改它。
  • 1 (最小) :在此设置的事件日志中记录高级事件。 事件可能包括服务执行的每个主要任务的一条消息。 在不知道问题所在位置时,使用此设置启动调查。
  • 2 (基本)
  • 3 (广泛) :此级别记录的信息比较低级别更详细,例如为完成任务而执行的步骤。 将问题缩小到一个服务或一组类别时,请使用此设置。
  • 4 (详细)
  • 5 (内部) :此级别记录所有事件,包括调试字符串和配置更改。 将记录服务的完整日志。 将问题跟踪到一小组类别的特定类别时,请使用此设置。

如何配置 Active Directory 诊断事件日志记录

若要配置 Active Directory 诊断事件日志记录,请执行以下步骤。

重要

此部分(或称方法或任务)介绍了修改注册表的步骤。 但是,注册表修改不当可能会出现严重问题。 因此,请务必严格按照这些步骤操作。 为了加强保护,应先备份注册表,再进行修改。 如果出现问题,可以还原注册表。 有关详细信息,请参阅 如何在 Windows 中备份和还原注册表

  1. 选择“开始”,然后选择“运行”

  2. 在“打开”框中,键入 “regedit”,然后选择“ 确定”。

  3. 找到并选择以下注册表项。

    域控制器: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics
    Lds: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<LDS instance name>\Diagnostics

    “注册表编辑器”窗口右窗格中显示的每个条目都表示 Active Directory 可以记录的事件类型。 所有条目都设置为默认值 0 (None) 。

  4. 为相应的组件配置事件日志记录:

    1. 在注册表编辑器的右窗格中,双击表示要记录的事件类型的条目。 例如,安全事件。
    2. 键入所需的日志记录级别 (例如,在 “值数据 ”框中键入 2) ,然后选择“ 确定”。
  5. 对要记录的每个组件重复步骤 4。

  6. 在“注册表”菜单上,选择“退出”以退出注册表编辑器。

    注意

    • 日志记录级别应设置为默认值 0 (None) ,除非正在调查问题。
    • 提高日志记录级别时,每个消息的详细信息和写入事件日志的消息数也会增加。 不建议将诊断级别设置为 3 或更高,因为这些级别的日志记录需要更多系统资源,并且可能会降低服务器的性能。 完成调查问题后,请确保将条目重置为 0。

启用现场工程诊断事件日志记录

默认情况下不启用此日志记录,应仅在活动故障排除期间启用。 可以使用以下步骤启用日志记录:

  1. 将目录服务事件日志的大小增加到 200 MB。

  2. 启用 Field Engineering 诊断注册表项,并将值设置为 5

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics\15 Field Engineering

  3. 创建以下注册表项,以配置基于注册表的筛选器,以便进行昂贵、低效和长时间运行的搜索:

    注册表路径 数据类型 默认值
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters\Expensive Search Results Threshold REG_DWORD 1
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters\Inefficient Search Results Threshold REG_DWORD 1
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters\Search Time Threshold (msecs) REG_DWORD 1