@@ -65,8 +65,11 @@ def trace(self, trace_info: BaseTraceInfo):
65
65
self .generate_name_trace (trace_info )
66
66
67
67
def workflow_trace (self , trace_info : WorkflowTraceInfo ):
68
- trace_id = trace_info .workflow_app_log_id or trace_info . workflow_run_id
68
+ trace_id = trace_info .workflow_run_id
69
69
user_id = trace_info .metadata .get ("user_id" )
70
+ metadata = trace_info .metadata
71
+ metadata ["workflow_app_log_id" ] = trace_info .workflow_app_log_id
72
+
70
73
if trace_info .message_id :
71
74
trace_id = trace_info .message_id
72
75
name = TraceTaskName .MESSAGE_TRACE .value
@@ -76,22 +79,22 @@ def workflow_trace(self, trace_info: WorkflowTraceInfo):
76
79
name = name ,
77
80
input = trace_info .workflow_run_inputs ,
78
81
output = trace_info .workflow_run_outputs ,
79
- metadata = trace_info . metadata ,
82
+ metadata = metadata ,
80
83
session_id = trace_info .conversation_id ,
81
84
tags = ["message" , "workflow" ],
82
85
created_at = trace_info .start_time ,
83
86
updated_at = trace_info .end_time ,
84
87
)
85
88
self .add_trace (langfuse_trace_data = trace_data )
86
89
workflow_span_data = LangfuseSpan (
87
- id = ( trace_info .workflow_app_log_id or trace_info . workflow_run_id ) ,
90
+ id = trace_info .workflow_run_id ,
88
91
name = TraceTaskName .WORKFLOW_TRACE .value ,
89
92
input = trace_info .workflow_run_inputs ,
90
93
output = trace_info .workflow_run_outputs ,
91
94
trace_id = trace_id ,
92
95
start_time = trace_info .start_time ,
93
96
end_time = trace_info .end_time ,
94
- metadata = trace_info . metadata ,
97
+ metadata = metadata ,
95
98
level = LevelEnum .DEFAULT if trace_info .error == "" else LevelEnum .ERROR ,
96
99
status_message = trace_info .error or "" ,
97
100
)
@@ -103,7 +106,7 @@ def workflow_trace(self, trace_info: WorkflowTraceInfo):
103
106
name = TraceTaskName .WORKFLOW_TRACE .value ,
104
107
input = trace_info .workflow_run_inputs ,
105
108
output = trace_info .workflow_run_outputs ,
106
- metadata = trace_info . metadata ,
109
+ metadata = metadata ,
107
110
session_id = trace_info .conversation_id ,
108
111
tags = ["workflow" ],
109
112
)
@@ -192,7 +195,7 @@ def workflow_trace(self, trace_info: WorkflowTraceInfo):
192
195
metadata = metadata ,
193
196
level = (LevelEnum .DEFAULT if status == "succeeded" else LevelEnum .ERROR ),
194
197
status_message = trace_info .error or "" ,
195
- parent_observation_id = ( trace_info .workflow_app_log_id or trace_info . workflow_run_id ) ,
198
+ parent_observation_id = trace_info .workflow_run_id ,
196
199
)
197
200
else :
198
201
span_data = LangfuseSpan (
0 commit comments