16.14. Logging the Number of Expired Tombstone Objects

Problem

You want to log the number of expired tombstone objects that are removed from Active Directory during each garbage-collection cycle.

Solution

Using a graphical user interface

  1. Run regedit.exe from the command line or Start Run.

  2. Expand HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services NTDS Diagnostics.

  3. In the right pane, double-click on 6 Garbage Collection.

  4. For Value data, enter 3.

  5. Click OK.

Using a command-line interface

> reg add HKLM\System\CurrentControlSet\Services\NTDS\Diagnostics /v "6 Garbage[RETURN] 
Collection" /t REG_DWORD /d 3

Using VBScript

' This code enables garbage collection logging.
' ------ SCRIPT CONFIGURATION ------
strDCName = "<DomainControllerName>"
intValue = 3  
' ------ END CONFIGURATION ---------

const HKLM = &H80000002
strNTDSReg = "SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics"
set objReg = GetObject("winmgmts:\\" & strDCName & "\root\default:StdRegProv")
objReg.SetDWORDValue HKLM, strNTDSReg, "6 Garbage Collection," intValue
WScript.Echo "Garbage Collection logging enabled"

Discussion

Here is a sample event that is logged when the 6 Garbage Collection diagnostics logging level is set to 3 or higher:

Event Type: Information Event Source: NTDS General Event Category: Garbage Collection Event ID: 1006 Date: 6/24/2003 Time: 11:29:31 AM User: NT AUTHORITY\ANONYMOUS LOGON Computer: DC1 Description: Internal event: Finished removing deleted objects that have expired (garbage collection). Number ...

Get Active Directory Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.