Monitoring FRS For Journal Wrap Errors (JRNL_WRAP_ERROR)

TL;DR

If you’re monitoring for NtFrs Event Id 13568, you should also monitor for NtFrs Event Id 13561.

But why?

Most of us that look after AD environments are familiar with NtFrs Event Id 13568 - maybe not the number itself (because what kind of masochist forces themselves to commit integers to memory), but you’ll surely be familiar with the actual error. It indicates a Journal Wrap error with FRS (File Replication Service) that prevents your domain controllers from synchronising SYSVOL data and is the Event Id I’ve been configuring our monitoring systems to look for. In fact, if you Google ”monitoring for JRNL_WRAP_ERROR”, the whole first page (and possibly more, I didn’t bother looking further) tell you to look for that particular Event Id.

Here it is, the error you inevitably see when something that should be working in your AD environment isn’t (and it’s not because of DNS).

The File Replication Service has detected that the replica set "DOMAIN SYSTEM VOLUME (SYSVOL SHARE)" is in JRNL_WRAP_ERROR. 
 
 Replica set name is    : "DOMAIN SYSTEM VOLUME (SYSVOL SHARE)" 
 Replica root path is   : "c:\windows\sysvol\domain" 
 Replica root volume is : "\\.\C:" 
 A Replica set hits JRNL_WRAP_ERROR when the record that it is trying to read from the NTFS USN journal is not found. This can occur because of one of the following reasons. 
 
 [1] Volume "\\.\C:" has been formatted. 
 [2] The NTFS USN journal on volume "\\.\C:" has been deleted. 
 [3] The NTFS USN journal on volume "\\.\C:" has been truncated. Chkdsk can truncate the journal if it finds corrupt entries at the end of the journal. 
 [4] File Replication Service was not running on this computer for a long time. 
 [5] File Replication Service could not keep up with the rate of Disk IO activity on "\\.\C:". 
 Setting the "Enable Journal Wrap Automatic Restore" registry parameter to 1 will cause the following recovery steps to be taken to automatically recover from this error state. 
 [1] At the first poll, which will occur in 5 minutes, this computer will be deleted from the replica set. If you do not want to wait 5 minutes, then run "net stop ntfrs" followed by "net start ntfrs" to restart the File Replication Service. 
 [2] At the poll following the deletion this computer will be re-added to the replica set. The re-addition will trigger a full tree sync for the replica set. 
 
WARNING: During the recovery process data in the replica tree may be unavailable. You should reset the registry parameter described above to 0 to prevent automatic recovery from making the data unexpectedly unavailable if this error condition occurs again. 
 
To change this registry parameter, run regedit. 
 
Click on Start, Run and type regedit. 
 
Expand HKEY_LOCAL_MACHINE. 
Click down the key path: 
   "System\CurrentControlSet\Services\NtFrs\Parameters" 
Double click on the value name 
   "Enable Journal Wrap Automatic Restore" 
and update the value. 
 
If the value name is not present you may add it with the New->DWORD Value function under the Edit Menu item. Type the value name exactly as shown above.

According to the instructions above, the Enable Journal Wrap Automatic Restore registry value should be reset to 0 once the journal wrap error is cleared. But what if it inst? Well then, your Event Id 13568 monitoring is going to be as useful as a chocolate teapot, because it will never be logged. Instead, Event Id 13561 is logged when the same error occurs. What is Event Id 13561? Let’s take a look.

The File Replication Service has detected that the replica set "DOMAIN SYSTEM VOLUME (SYSVOL SHARE)" is in JRNL_WRAP_ERROR. 
 
 Replica set name is    : "DOMAIN SYSTEM VOLUME (SYSVOL SHARE)" 
 Replica root path is   : "c:\windows\sysvol\domain" 
 Replica root volume is : "\\.\C:" 
 A Replica set hits JRNL_WRAP_ERROR when the record that it is trying to read from the NTFS USN journal is not found. This can occur because of one of the following reasons. 
 
 [1] Volume "\\.\C:" has been formatted. 
 [2] The NTFS USN journal on volume "\\.\C:" has been deleted. 
 [3] The NTFS USN journal on volume "\\.\C:" has been truncated. Chkdsk can truncate the journal if it finds corrupt entries at the end of the journal. 
 [4] File Replication Service was not running on this computer for a long time. 
 [5] File Replication Service could not keep up with the rate of Disk IO activity on "\\.\C:". 
 
 Following recovery steps will be taken to automatically recover from this error state. 
 [1] At the first poll which will occur in 5 minutes this computer will be deleted from the replica set. 
 [2] At the poll following the deletion this computer will be re-added to the replica set. The re-addition will trigger a full tree sync for the replica set.

It’s exactly the same as Event Id 13568, but without the registry changes documented - because you already have them enabled.

What does this mean? If you’re only looking for Event Id 13568, and a Journal Wrap error occurs that isn’t automatically fixed by the Journal Wrap Automatic Restore process you won’t know about it until things that should be working aren’t. Which is exactly what prompted this post.

What else?

  • This error only appears when the FRS service is starting, so you better be rebooting your domain controllers to catch it (which won’t be a problem if you’re patching every month).
  • BurFlags is a better way to clear JRNL_WRAP_ERROR errors. The registry value referenced in the Event Id description has not been the recommended process since Server 2000!
  • A list of all FRS Event Log Ids can be found here.