Expand description
Feature-gated logging for clojurust.
Provides per-feature debug and trace logging controlled at runtime via CLI flags. Features are arbitrary strings (e.g. “gc”, “jit”, “reader”) — any feature name is accepted even if no code ever logs with it.
§Usage
ⓘ
// Set features from CLI flags
cljrs_logging::set_feature_level("gc", Level::Debug);
cljrs_logging::set_feature_level("jit", Level::Trace);
// In code:
feat_debug!("gc", "starting collection, heap_size={}", heap_size);
feat_trace!("gc", "visiting object at {:p}", ptr);Macros§
- feat_
debug - Log a message at debug level for a feature. Only prints if the feature is enabled at debug level or higher.
- feat_
trace - Log a message at trace level for a feature.
Enums§
- Level
- Log level for a feature.
Functions§
- feature_
level - Get the logging level for a feature. Returns
Level::Offif the feature has not been configured. - is_
enabled - Returns true if the given feature is enabled at least at
level. - parse_
x_ flag - Parse a
-Xflag value like"debug:gc,jit"or"trace:reader"and register the appropriate feature levels. - set_
feature_ level - Set the logging level for a single feature.