nirs4all.core.logging.context module
Run context management for nirs4all logging.
This module provides context managers for tracking run state, phases, branches, sources, and stacking operations in the logging system.
- class nirs4all.core.logging.context.BranchContext(name: str, path: list[str] = <factory>, index: int | None = None, total: int | None = None, parent: str | None = None, depth: int = 0)[source]
Bases:
objectContext for a branch in the pipeline.
- class nirs4all.core.logging.context.RunState(run_id: str, run_name: str | None = None, project: str | None = None, start_time: datetime = <factory>, current_phase: Phase | None = None, branch_stack: list[BranchContext] = <factory>, source_context: SourceContext | None = None, stack_context: StackContext | None = None, extra: dict[str, ~typing.Any]=<factory>)[source]
Bases:
objectState for a single run.
- Variables:
run_id (str) – Unique run identifier.
run_name (str | None) – Human-readable run name.
project (str | None) – Project name (optional).
start_time (datetime.datetime) – Run start timestamp.
current_phase (nirs4all.core.logging.events.Phase | None) – Current workflow phase.
branch_stack (list[nirs4all.core.logging.context.BranchContext]) – Stack of branch contexts (for nesting).
source_context (nirs4all.core.logging.context.SourceContext | None) – Current source context (if any).
stack_context (nirs4all.core.logging.context.StackContext | None) – Current stacking context (if any).
- branch_stack: list[BranchContext]
- property current_branch: BranchContext | None
Get the current (innermost) branch context.
- source_context: SourceContext | None = None
- stack_context: StackContext | None = None
- class nirs4all.core.logging.context.SourceContext(name: str, index: int | None = None, total: int | None = None)[source]
Bases:
objectContext for a source in multi-source pipelines.
- Variables: