Opt-in Java Flight Recorder profiling — ONE recording per PROCESS.
Turned on per-process by the VIS_JFR env var (set by bin/vis --jfr). The
var is INHERITED by the detached gateway daemon that a client spawns, so both
the client (TUI/web) process AND the gateway daemon each start their OWN
recording into a role+pid-tagged file under ~/.vis/:
vis-client-<pid>-<ts>.jfr ← the TUI / web / one-shot process vis-gateway-<pid>-<ts>.jfr ← the long-lived gateway daemon
That gives you two SEPARATE readings to compare when a client seems to be
waiting on the gateway (jfr print --events jdk.ExecutionSample <file>).
Works on the JVM always; on the compiled native binary only when it was built
with --enable-monitoring=jfr (see the app's native-image.properties). Never
throws and never blocks startup — if JFR is unavailable it just no-ops.
Opt-in Java Flight Recorder profiling — ONE recording per PROCESS. Turned on per-process by the `VIS_JFR` env var (set by `bin/vis --jfr`). The var is INHERITED by the detached gateway daemon that a client spawns, so both the client (TUI/web) process AND the gateway daemon each start their OWN recording into a role+pid-tagged file under `~/.vis/`: vis-client-<pid>-<ts>.jfr ← the TUI / web / one-shot process vis-gateway-<pid>-<ts>.jfr ← the long-lived gateway daemon That gives you two SEPARATE readings to compare when a client seems to be waiting on the gateway (`jfr print --events jdk.ExecutionSample <file>`). Works on the JVM always; on the compiled native binary only when it was built with `--enable-monitoring=jfr` (see the app's native-image.properties). Never throws and never blocks startup — if JFR is unavailable it just no-ops.
(enabled?)True when VIS_JFR requests profiling for this process.
True when `VIS_JFR` requests profiling for this process.
(maybe-start! role)Start a per-process JFR recording tagged with role ("client"/"gateway")
when VIS_JFR is set. Idempotent (first call per process wins), never throws.
Returns the destination File when a recording started, else nil.
Start a per-process JFR recording tagged with `role` ("client"/"gateway")
when `VIS_JFR` is set. Idempotent (first call per process wins), never throws.
Returns the destination `File` when a recording started, else nil.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 |