Skip to content

Index

provide.foundation.logger.processors

TODO: Add module docstring.

Functions

inject_trace_context

inject_trace_context(
    logger: Any,
    method_name: str,
    event_dict: dict[str, Any],
) -> dict[str, Any]

Processor to inject trace context into log records.

Parameters:

Name Type Description Default
logger Any

Logger instance

required
method_name str

Method name being called

required
event_dict dict[str, Any]

Current event dictionary

required

Returns:

Type Description
dict[str, Any]

Event dictionary with trace context added

Source code in provide/foundation/logger/processors/trace.py
def inject_trace_context(logger: Any, method_name: str, event_dict: dict[str, Any]) -> dict[str, Any]:
    """Processor to inject trace context into log records.

    Args:
        logger: Logger instance
        method_name: Method name being called
        event_dict: Current event dictionary

    Returns:
        Event dictionary with trace context added

    """
    # Try OpenTelemetry trace context first
    if _inject_otel_trace_context(event_dict):
        return event_dict

    # Fallback to Foundation's simple tracer context
    _inject_foundation_trace_context(event_dict)

    return event_dict