Best-effort local hang evidence, independent of Python worker retirement.
Gateway watchdogs capture platform-thread stacks before cancellation/cleanup. An authenticated local client can additionally ask a previously observed JVM for platform AND virtual stacks through jcmd when HTTP stops responding. Neither path stops/restarts the gateway. A frozen VM may also refuse attach; that failure is evidence, not proof of a particular cause. No HTTP bodies, credentials, prompts, tool arguments or process command-line arguments are saved.
Best-effort local hang evidence, independent of Python worker retirement. Gateway watchdogs capture platform-thread stacks before cancellation/cleanup. An authenticated local client can additionally ask a previously observed JVM for platform AND virtual stacks through jcmd when HTTP stops responding. Neither path stops/restarts the gateway. A frozen VM may also refuse attach; that failure is evidence, not proof of a particular cause. No HTTP bodies, credentials, prompts, tool arguments or process command-line arguments are saved.
(capture! context)Save private, bounded platform stacks before a gateway watchdog tears down a stalled turn. Adds at most CAPTURE_MS of waiting; failures never prevent recovery. Reports are UTF-8 JSON with snake_case field names under ~/.vis/logs/YYYY-MM-DD/gateway-hang-*/report.json (newest ten across all dates retained). JVM virtual threads are not enumerated by Thread/getAllStackTraces.
Save private, bounded platform stacks before a gateway watchdog tears down a stalled turn. Adds at most CAPTURE_MS of waiting; failures never prevent recovery. Reports are UTF-8 JSON with snake_case field names under ~/.vis/logs/YYYY-MM-DD/gateway-hang-*/report.json (newest ten across all dates retained). JVM virtual threads are not enumerated by Thread/getAllStackTraces.
(observe-probe! entry healthy?)Observe the canonical client's authenticated health result. A failed probe may collect external JVM stacks ONLY for a previously successful local PID/start identity with a sibling jcmd. At most once per minute, one helper at a time. Returns immediately; remote/native/unknown processes are never attached/signalled. This needs a running local client, and attach can itself fail on a frozen JVM.
Observe the canonical client's authenticated health result. A failed probe may collect external JVM stacks ONLY for a previously successful local PID/start identity with a sibling jcmd. At most once per minute, one helper at a time. Returns immediately; remote/native/unknown processes are never attached/signalled. This needs a running local client, and attach can itself fail on a frozen JVM.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |