nemo_evaluator.adapters.interceptors.logging_interceptor#

Logging interceptors with registry support.

Module Contents#

Classes#

RequestLoggingInterceptor

Logs incoming requests.

ResponseLoggingInterceptor

Logs responses.

API#

class nemo_evaluator.adapters.interceptors.logging_interceptor.RequestLoggingInterceptor(params: Params)[source]#

Bases: nemo_evaluator.adapters.types.RequestInterceptor

Logs incoming requests.

Initialization

Initialize the request logging interceptor.

Args: params: Configuration parameters

class Params(/, **data: Any)[source]#

Bases: nemo_evaluator.logging.BaseLoggingParams

Configuration parameters for request logging.

Initialization

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

log_request_body: bool#

‘Field(…)’

log_request_headers: bool#

‘Field(…)’

max_requests: int | None#

‘Field(…)’

intercept_request(
ar: nemo_evaluator.adapters.types.AdapterRequest,
context: nemo_evaluator.adapters.types.AdapterGlobalContext,
) nemo_evaluator.adapters.types.AdapterRequest[source]#

Log the incoming request.

log_request_body: bool#

None

log_request_headers: bool#

None

max_requests: int | None#

None

class nemo_evaluator.adapters.interceptors.logging_interceptor.ResponseLoggingInterceptor(params: Params)[source]#

Bases: nemo_evaluator.adapters.types.ResponseInterceptor

Logs responses.

Initialization

Initialize the response logging interceptor.

Args: params: Configuration parameters

class Params(/, **data: Any)[source]#

Bases: nemo_evaluator.logging.BaseLoggingParams

Configuration parameters for response logging.

Initialization

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

log_response_body: bool#

‘Field(…)’

log_response_headers: bool#

‘Field(…)’

max_responses: int | None#

‘Field(…)’

intercept_response(
resp: nemo_evaluator.adapters.types.AdapterResponse,
context: nemo_evaluator.adapters.types.AdapterGlobalContext,
) nemo_evaluator.adapters.types.AdapterResponse[source]#

Log the outgoing response.

log_response_body: bool#

None

log_response_headers: bool#

None

max_responses: int | None#

None