Understanding event buffers and event loss

Adaptive Server Monitor uses several mechanisms to collect data. One source of data is low-level Adaptive Server monitoring events, which each Adaptive Server engine writes to its own event buffer in shared memory. Monitor Server scans the event buffers at regular intervals and summarizes the events according to client specifications.

The writing of event records by the Adaptive Server and reading of events by the Monitor Server are not directly synchronized in any way. This is essential to avoid impacting the throughput of Adaptive Server, but it opens the possibility of event buffer overruns and lost events. Events can be lost if:

When Monitor Server detects that events were lost, it dynamically reduces the scan interval to a value at which event loss no longer occurs. It also writes the following message in the log file:

Event buffer wrap: <n> events lost. 

You configure the number of event buffers per engine using the event buffers per engine Adaptive Server configuration parameter. The following sections contain information about sizing and changing this parameter.

Monitor Server automatically computes the frequency of event buffer scans. The calculation is based on the number of events that can be stored in the event buffers configured in Adaptive Server. You can affect this frequency in two ways:

In either case, Monitor Server dynamically reduces the initial scan interval if it detects that the event buffers are filling too rapidly. See “Initial scan interval” for more information about the scan_interval parameter.