Skip to content

Commit ed189f1

Browse files
committed
feat: redid tracer to be more readable
1 parent a2b83a8 commit ed189f1

5 files changed

Lines changed: 558 additions & 142 deletions

File tree

crates/taurus-core/src/runtime/engine/executor.rs

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -156,14 +156,14 @@ impl<'a> EngineExecutor<'a> {
156156
// InputType references resolve against the currently running node.
157157
value_store.set_current_node_id(node.id);
158158

159-
let frame_id = self.trace_enter(node);
159+
let frame_id = self.trace_enter(node, value_store);
160160
let signal = match &node.execution_target {
161161
NodeExecutionTarget::Local => self.execute_local_node(node, value_store, frame_id),
162162
NodeExecutionTarget::Remote { service } => {
163163
self.execute_remote_node(node, service, value_store, frame_id)
164164
}
165165
};
166-
self.trace_exit(frame_id, &signal);
166+
self.trace_exit(frame_id, &signal, value_store);
167167

168168
NodeExecutionResult { signal, frame_id }
169169
}
@@ -519,15 +519,17 @@ impl<'a> EngineExecutor<'a> {
519519
}
520520
}
521521

522-
fn trace_enter(&self, node: &CompiledNode) -> Option<u64> {
522+
fn trace_enter(&self, node: &CompiledNode, value_store: &ValueStore) -> Option<u64> {
523523
self.tracer.map(|tracer| {
524-
tracer
525-
.borrow_mut()
526-
.enter_node(node.id, node.handler_id.as_str())
524+
tracer.borrow_mut().enter_node(
525+
node.id,
526+
node.handler_id.as_str(),
527+
value_store.trace_snapshot(),
528+
)
527529
})
528530
}
529531

530-
fn trace_exit(&self, frame_id: Option<u64>, signal: &Signal) {
532+
fn trace_exit(&self, frame_id: Option<u64>, signal: &Signal, value_store: &ValueStore) {
531533
let Some(frame_id) = frame_id else {
532534
return;
533535
};
@@ -550,7 +552,9 @@ impl<'a> EngineExecutor<'a> {
550552
},
551553
Signal::Stop => Outcome::Stop,
552554
};
553-
tracer.borrow_mut().exit_node(frame_id, outcome);
555+
tracer
556+
.borrow_mut()
557+
.exit_node(frame_id, outcome, value_store.trace_snapshot());
554558
}
555559

556560
fn trace_record_arg(&self, frame_id: Option<u64>, arg: ArgTrace) {

0 commit comments

Comments
 (0)