Fix Report Engine Log Output Priority

This commit is contained in:
马一丁
2025-11-20 12:36:33 +08:00
parent 2da43dbaf6
commit 5925f49669
+41
View File
@@ -3535,6 +3535,9 @@
// 日志数据已通过Socket.IO/SSE实时同步,无需重新加载
// 仅保留特殊页面的初始化逻辑
if (app === 'report') {
// 【修复】切换到Report Engine时启动日志刷新
startReportLogRefresh();
// 只在报告界面未初始化时才重新加载
const reportContent = document.getElementById('reportContent');
if (!reportContent || reportContent.children.length === 0) {
@@ -3544,6 +3547,9 @@
setTimeout(() => {
checkReportLockStatus();
}, 500);
} else {
// 【修复】切换离开Report Engine时停止日志刷新,节省资源
stopReportLogRefresh();
}
}
@@ -4698,6 +4704,11 @@
// 渲染报告界面
renderReportInterface(data);
// 【修复】加载Report界面时启动日志刷新
if (currentApp === 'report') {
startReportLogRefresh();
}
} else {
reportContent.innerHTML = `
<div class="report-status error">
@@ -5102,6 +5113,9 @@
reportTaskId = data.task_id;
showMessage('报告生成已启动', 'success');
// 【修复】立即启动日志实时刷新,确保日志实时显示
startReportLogRefresh();
// 更新任务状态显示
updateTaskProgressStatus({
task_id: data.task_id,
@@ -5147,6 +5161,33 @@
});
}
// 【修复】启动Report Engine日志实时刷新
function startReportLogRefresh() {
// 清除旧的定时器
if (reportLogRefreshInterval) {
clearInterval(reportLogRefreshInterval);
reportLogRefreshInterval = null;
}
// 启动新的日志刷新定时器(1秒刷新一次,保证实时性)
reportLogRefreshInterval = setInterval(() => {
if (currentApp === 'report') {
refreshReportLog();
}
}, 1000); // 1秒刷新,确保日志实时显示
console.log('[Report日志] 启动实时日志刷新,频率: 1秒');
}
// 【修复】停止Report Engine日志刷新
function stopReportLogRefresh() {
if (reportLogRefreshInterval) {
clearInterval(reportLogRefreshInterval);
reportLogRefreshInterval = null;
console.log('[Report日志] 停止日志刷新');
}
}
// 开始进度轮询
function startProgressPolling(taskId) {
if (reportPollingInterval) {