Appearance
Troubleshooting & FAQ
Need direct support? Use the Support page and submit a structured ticket.
Quick triage flow
- No rows at all? -> Check Play Mode, Record toggle, and
recordingEnabled - SUB/UNSUB only? -> Verify INVOKE path and IL pattern support
- INVOKE missing for one event? -> Check filters, subscribers present, and assembly instrumentation
- Payload missing? -> Enable Payload toggle, then use
TagPayloadfor custom dispatcher flows - Still broken? -> Enable ILPP diagnostics and inspect per-assembly summary in Console
Quick triage flow
- No rows at all? -> Check Play Mode, Record toggle, and
recordingEnabled - SUB/UNSUB only? -> Verify INVOKE path and IL pattern support
- INVOKE missing for one event? -> Check filters, subscribers present, and assembly instrumentation
- Payload missing? -> Enable Payload toggle, then use
TagPayloadfor custom dispatcher flows - Still broken? -> Enable ILPP diagnostics and inspect per-assembly summary in Console
I see no rows at all
- Play Mode — Event Monitor is aimed at Play sessions (timestamps and frame info assume runtime).
- Record — Ensure the toolbar Record toggle is on.
- ILPP — Confirm
recordingEnabledis notfalseinLibrary/EventMonitor/ilpp_settings.json. Enable ILPP diagnostics and recompile. - Code path — Trigger a known
+=or?.Invoke()in an instrumented assembly.
SUB appears but INVOKE never does
- Null delegate —
?.Invoke()does not callInvokewhen there are no subscribers; no injection site runs. - Filter — Clear the log search field; disable overly narrow filters. See Filtering and missing INVOKE rows.
- Pattern — Firing through helpers may skip the injector. See IL patterns and limitations.
Duplicate or “extra” SUB/UNSUB lines
ReflectionScanner plus ILPP can both observe subscription changes. See ILPP vs ReflectionScanner.
Payload always empty
- Turn Payload on in the toolbar.
- Ensure
EnablePayloadCaptureis effectively true for the session. - For non-instrumented invocations, use
TagPayloadimmediately before firing.
Performance concerns
- Keep Payload and Stack Traces off unless needed.
- Avoid Payload Details on large object graphs during long Play sessions.
Performance budget (recommended defaults)
- Daily development: Record ON, Payload OFF, Stack Traces OFF
- Focused bug hunt: enable Payload or Stack Traces temporarily
- Long sessions: periodically export + clear log to keep memory usage predictable
Performance budget (recommended defaults)
- Daily development: Record ON, Payload OFF, Stack Traces OFF
- Focused bug hunt: enable Payload or Stack Traces temporarily
- Long sessions: periodically export + clear log to keep memory usage predictable
Where is the demo scene?
Tools → Event Monitor → Generate Demo Scene — see Generate the demo scene.
Full documentation index
Start at Overview or Quick Start.