Skip to content

Commit 571994c

Browse files
fix(monitor): improve duration calculation accuracy and robustness
- Use start_time for start event duration calculation to ensure consistency - Add timestamp backfill for single message submission in task queue - Ensure robust handling of missing timestamps
1 parent 071089d commit 571994c

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

src/memos/mem_scheduler/task_schedule_modules/dispatcher.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ def wrapped_handler(messages: list[ScheduleMessageItem]):
186186
else None
187187
),
188188
"event_duration_ms": start_delay_ms,
189-
"total_duration_ms": wait_sec * 1000,
189+
"total_duration_ms": self._calc_total_duration_ms(start_time, enq_ts),
190190
},
191191
)
192192

src/memos/mem_scheduler/task_schedule_modules/task_queue.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,8 @@ def submit_messages(self, messages: ScheduleMessageItem | list[ScheduleMessageIt
9393
if len(messages) < 1:
9494
logger.error("Submit empty")
9595
elif len(messages) == 1:
96+
if getattr(messages[0], "timestamp", None) is None:
97+
messages[0].timestamp = get_utc_now()
9698
enqueue_ts = to_iso(getattr(messages[0], "timestamp", None))
9799
emit_monitor_event(
98100
"enqueue",

0 commit comments

Comments
 (0)