Logging Controls
Controlling logging globally controlling-logging-globally
Rerun logging is enabled by default. The logging behavior can be overridden at runtime using the RERUN
environment variable:
export RERUN=off
python my_rerun_enabled_script.py
# or
cargo run my_rerun_package
# No log messages will be transmitted.
The RERUN
environment variable is read once during SDK initialization. The accepted values for RERUN
are 1/on/true
, and 0/off/false
.
ā¹ļø Note: When Rerun is disabled, logging statements are bypassed and essentially become no-ops.
Creating a default-off setup in code creating-a-defaultoff-setup-in-code
The "default-on" behavior can also be changed to a "default-off" behavior:
import rerun as rr
rr.init("rerun_example_app", default_enabled=False)
Dynamically turn logging on/off dynamically-turn-logging-onoff
In order to dynamically turn off logging at runtime, you can swap out the active recording with a disabled recording. When you want to turn logging back on, you simply continue to use the previous recording again.
Rust rust
In Rust you always pass the recording explicitly, making this fully transparent.
In order to create a no-op recording call RecordingStream::disabled()
.
let noop_rec = RecordingStream::disabled();
Python python
The Python API uses the global recording stream by default.
To swap it out with a no-op recording call set_global_data_recording
with None
.
# Disabling logging
prev_rec = rr.set_global_data_recording(None)
# ā¦
# Re-enabling logging
rr.set_global_data_recording(prev_rec)