Perf Event Collector Stage
This stage enables the capture of kernel ‘perf event counters’ (see the section on profiling). All information captured from the kernel is packed into rbufs and transmitted, allowing you to log this information and post-process it into something more actionable.
The stage is configured via the
PerfEventConfig structure. This structure contains a single
events, which allows you to configure the events that you wish to capture. Each
event can be configured as such:
name- The name of the event, such as
buffer_size_pages- The size of the ring buffer (must be a power of two). Larger buffers use more memory but will reduce the data that is dropped.
event_wakeup_threshold- The number of events to accumulate before data is collected. Lower numbers cause higher system load but reduce latency.
You can leave
event_wakeup_threshold at zero to accept the defaults.
By default, the stage will wake up and collect data whenever a ring buffer has sufficient data in it. It does not offer any other control.
The stage periodically emits statistics indicating how many errors there have been, connection attempts have been made, and how many bytes have been read.