in src/agents/tracing/processors.py [0:0]
def _run(self):
while not self._shutdown_event.is_set():
current_time = time.time()
queue_size = self._queue.qsize()
# If it's time for a scheduled flush or queue is above the trigger threshold
if current_time >= self._next_export_time or queue_size >= self._export_trigger_size:
self._export_batches(force=False)
# Reset the next scheduled flush time
self._next_export_time = time.time() + self._schedule_delay
else:
# Sleep a short interval so we don't busy-wait.
time.sleep(0.2)
# Final drain after shutdown
self._export_batches(force=True)