Log File Flushing in the Event Tracking Subsystem

The Celogflush.exe application periodically empties or flushes the contents of the log file for the event tracking subsystem. You can modify the behavior of the Celogflush.exe application by editing the following registry entries in the HKEY_LOCAL_MACHINE\System\Celog registry key.

Registry entry Data type Description
FlushTimeout DWORD Hexadecimal value that specifies the length of time, in milliseconds (ms), between successive flushes of the log file. Celogflush.exe flushes the log file more frequently if data is collected quickly. The default value for this registry entry is 10000, or 10 seconds.
ThreadPriority DWORD Hexadecimal value that specifies the priority level of the thread that flushes the log file. Priority levels range from 0 to 255. The default value for this registry entry is 248. Priority level 248 is the lowest real time priority level.
Transport String Specifies which transport to use. You can specify one of the following transports:
  • "CESH"

    Stores data in a log file in the release directory on the development workstation. "CESH" is the default value for the Transport registry entry.

  • "LocalFile"

    Stores data in a log file on the target device. The "LocalFile" setting provides an alternative method of collecting data if the Celogflush.exe application consumes an excessive amount of CPU or network bandwidth. The "LocalFile" setting can also be useful if there is no development workstation to send data to.

FileName String Specifies the path and file name of the log file.

Examples

The following code example shows the default settings for the HKEY_LOCAL_MACHINE\System\Celog registry key. These settings specify that the event tracking subsystem stores data in a log file named Celog.clg in the release directory on the development workstation.

These settings require that the event tracking subsystem use the release file system (Relfsd) to transport the data. Therefore, you must enable KITL on the target device and have Shell.exe in the release directory for the platform.

[HKEY_LOCAL_MACHINE\System\CeLog]
  "Transport"="CESH"
  "FileName"="celog.clg"

The following code example specifies that the log file be in the root directory of the file system on the target device. These settings do not require KITL or Shell.exe.

[HKEY_LOCAL_MACHINE\System\CeLog]
  "Transport"="LocalFile"
  "FileName"="celog.clg"

The following code example stores the log file on a mounted drive on the target device. The mounted drive is identified by the term Storage Card. These settings do not require KITL or Shell.exe, but do require a mounted drive on the target device.

[HKEY_LOCAL_MACHINE\System\CeLog]
  "Transport"="LocalFile"
  "FileName"="\\Storage Card\\celog.clg"

The following code example shows how to configure Celogflush.exe to flush the log file every second, rather than every 10 seconds.

[HKEY_LOCAL_MACHINE\System\CeLog]
  "FlushTimeout"=dword:3E8  ; 1000 ms, in hex

The following code example shows how to lower the priority of the thread that flushes the log file from the default value of 248 to THREAD_PRIORITY_ABOVE_NORMAL, or 251.

[HKEY_LOCAL_MACHINE\System\CeLog]
  "FlushTimeout"=dword:FB   ; 251, in hex

See Also

Event Tracking Implementation | Event Tracking | Event Tracking with OSCapture.exe

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.