Skip to content

OSSS.ai.observability.context

OSSS.ai.observability.context

Observability context management for correlation tracking.

This module provides thread-local context management for correlation IDs and observability metadata throughout the request lifecycle.

ObservabilityContext

Bases: BaseModel

Observability context for tracking execution state.

Migrated from dataclass to Pydantic BaseModel for enhanced validation, serialization, and integration with the OSSS Pydantic ecosystem.

Contains correlation information and metadata that flows through the entire execution pipeline.

with_agent(agent_name, step_id=None)

Create new context with agent information.

with_step(step_id)

Create new context with step information.

with_phase(execution_phase)

Create new context with execution phase.

with_metadata(**metadata)

Create new context with additional metadata.

ObservabilityContextManager

Context manager for observability context.

Provides convenient management of observability context within a specific scope.

__init__(context)

Initialize context manager.

Parameters

context : ObservabilityContext Context to set during scope

__enter__()

Enter context scope.

__exit__(exc_type, exc_val, exc_tb)

Exit context scope.

get_observability_context()

Get current observability context.

Returns

ObservabilityContext or None Current context if available

set_observability_context(context)

Set observability context for current thread.

Parameters

context : ObservabilityContext Context to set

clear_observability_context()

Clear observability context for current thread.

get_correlation_id()

Get current correlation ID.

Returns

str or None Current correlation ID if available

set_correlation_id(correlation_id)

Set correlation ID for current thread.

Parameters

correlation_id : str Correlation ID to set

clear_correlation_id()

Clear correlation ID for current thread.

observability_context(correlation_id=None, agent_name=None, step_id=None, pipeline_id=None, execution_phase=None, **metadata)

Create observability context manager.

Parameters

correlation_id : str, optional Correlation ID (generates new one if not provided) agent_name : str, optional Name of the agent step_id : str, optional Step identifier pipeline_id : str, optional Pipeline identifier execution_phase : str, optional Current execution phase **metadata Additional metadata

Returns

ObservabilityContextManager Context manager for the observability context