Argus.Analyses.ProcessBottleneck (Panoptes v0.13.0)

Copy Markdown View Source

Process bottleneck detection.

Identifies GenServer modules with high synchronous call fan-in: 5 or more distinct caller modules make GenServer.call to the same target. These are serialization points that can become throughput bottlenecks under load.

Low fan-in GenServers (1–4 callers) are normal centralized services and are not reported.

Requires the OTP extractor for sync_call and implements_behaviour facts.

Output relations

  • bottleneck_caller(caller_mod, target_mod) — caller of a high-fan-in GenServer.
  • sync_call_fan_in(target_mod, count) — number of distinct callers (>= 5 only).

Finding severities

  • sync_call_fan_in:warning. The headline finding: a single process serializing five or more caller modules is a throughput ceiling waiting for load.
  • bottleneck_caller:info. Supporting evidence: one row per caller of the bottleneck.