diff --git a/src/backend/base/langflow/graph/utils.py b/src/backend/base/langflow/graph/utils.py index bfb4fadb1..0a83c8aa1 100644 --- a/src/backend/base/langflow/graph/utils.py +++ b/src/backend/base/langflow/graph/utils.py @@ -176,6 +176,7 @@ async def log_vertex_build( try: if not get_settings_service().settings.vertex_builds_storage_enabled: return + vertex_build = VertexBuildBase( flow_id=flow_id, id=vertex_id, diff --git a/src/backend/base/langflow/services/tracing/schema.py b/src/backend/base/langflow/services/tracing/schema.py index fab6728de..30a0bc73f 100644 --- a/src/backend/base/langflow/services/tracing/schema.py +++ b/src/backend/base/langflow/services/tracing/schema.py @@ -1,5 +1,7 @@ +from fastapi.encoders import jsonable_encoder from pydantic import BaseModel, field_serializer from pydantic.v1 import BaseModel as V1BaseModel +from pydantic_core import PydanticSerializationError from langflow.schema.log import LoggableType @@ -24,4 +26,8 @@ class Log(BaseModel): return value.to_json() if isinstance(value, BaseModel): return value.model_dump(exclude_none=True) + try: + value = jsonable_encoder(value) + except PydanticSerializationError: + return str(value) return value