Skip to main content

Function: createMetricsMiddleware()

createMetricsMiddleware(options: { metricsCallback?: (metric: { name: string; type: "counter" | "timing"; value: number; }) => void; trackCounts?: boolean; trackTiming?: boolean; }): EventMiddleware

Defined in: electron/events/middleware.ts:564

Metrics middleware that tracks event counts and timing.

Parameters

options

Configuration options for metrics collection

metricsCallback?

(metric: { name: string; type: "counter" | "timing"; value: number; }) => void

trackCounts?

boolean

trackTiming?

boolean

Returns

EventMiddleware

EventMiddleware function that collects event metrics

Remarks

Options include:

  • trackCounts: Whether to track event occurrence counts (default: true)
  • trackTiming: Whether to track event processing duration (default: true)
  • metricsCallback: Optional callback to receive metric data for external systems

Example

const metricsMiddleware = createMetricsMiddleware({
trackCounts: true,
trackTiming: true,
metricsCallback: (metric) => {
console.log(`Metric: ${metric.name} = ${metric.value}`);
},
});
eventBus.use(metricsMiddleware);