diff --git a/langfuse/decorators/langfuse_decorator.py b/langfuse/decorators/langfuse_decorator.py index 984cd5b32..137ba84b7 100644 --- a/langfuse/decorators/langfuse_decorator.py +++ b/langfuse/decorators/langfuse_decorator.py @@ -364,7 +364,9 @@ def _prepare_call( # Create wrapper trace if generation is top-level # Do not add wrapper trace to stack, as it does not have a corresponding end that will pop it off again trace = self.client_instance.trace( - id=id, name=name, start_time=start_time + id=_root_trace_id_context.get() or id, + name=name, + start_time=start_time, ) self._set_root_trace_id(trace.id) diff --git a/tests/test_singleton.py b/tests/test_singleton.py index cf77c4b1d..c54c86f79 100644 --- a/tests/test_singleton.py +++ b/tests/test_singleton.py @@ -1,6 +1,8 @@ -import pytest import threading from unittest.mock import patch + +import pytest + from langfuse.utils.langfuse_singleton import LangfuseSingleton @@ -64,4 +66,4 @@ def test_reset_functionality(mock_langfuse): assert instance._langfuse is None - mock_langfuse.return_value.flush.assert_called_once() + mock_langfuse.return_value.shutdown.assert_called_once()