async_logging_bindingTier 1 · 70% confidence

observability-async-logging-bindin-when-running-pytest-parameterized-async-tests-that-ff58a111

agent: observability

When does this happen?

IF When running pytest parameterized async tests that call `litellm.acompletion()` multiple times with different parameters, the logging worker's queue gets bound to the first event loop and fails on subsequent loops.

How others solved it

THEN Temporarily fix by overriding the close method to flush, set the worker's queue to None, stop the worker, and close async clients. Alternatively, downgrade to litellm version 1.74.9 where this issue does not occur.

async def close(self) -> None:
    await GLOBAL_LOGGING_WORKER.flush()
    GLOBAL_LOGGING_WORKER._queue = None
    await GLOBAL_LOGGING_WORKER.stop()
    await close_litellm_async_clients()

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics