diff --git a/static/js/app.js b/static/js/app.js index bfa6eaa..b6bd977 100644 --- a/static/js/app.js +++ b/static/js/app.js @@ -3439,6 +3439,11 @@ function displayModalGroupedQueryLogs(groupedLogs) { return; } + // 获取当前的过滤器状态,如果复选框不存在则默认显示所有 + const showInfo = document.getElementById('modal-log-level-info')?.checked ?? true; + const showWarning = document.getElementById('modal-log-level-warning')?.checked ?? true; + const showError = document.getElementById('modal-log-level-error')?.checked ?? true; + let html = ''; // 为每个批次生成折叠面板 @@ -3447,7 +3452,19 @@ function displayModalGroupedQueryLogs(groupedLogs) { const isExpanded = index === groupedLogs.length - 1; // 默认展开最新批次 const collapseId = `modal-batch-${batchId}`; - // 统计批次信息 + // 过滤日志 + const filteredLogs = logs.filter(log => { + return (log.level === 'INFO' && showInfo) || + (log.level === 'WARNING' && showWarning) || + (log.level === 'ERROR' && showError); + }); + + // 如果过滤后没有日志,跳过这个批次 + if (filteredLogs.length === 0) { + return; + } + + // 统计批次信息(基于原始日志) const logCounts = { INFO: logs.filter(log => log.level === 'INFO').length, WARNING: logs.filter(log => log.level === 'WARNING').length, @@ -3455,6 +3472,7 @@ function displayModalGroupedQueryLogs(groupedLogs) { }; const totalLogs = logs.length; + const filteredCount = filteredLogs.length; const firstLog = logs[0]; const lastLog = logs[logs.length - 1]; const duration = firstLog && lastLog ? calculateDuration(firstLog.timestamp, lastLog.timestamp) : '0秒'; @@ -3466,7 +3484,7 @@ function displayModalGroupedQueryLogs(groupedLogs) { const batchIcon = hasErrors ? 'fas fa-times-circle' : hasWarnings ? 'fas fa-exclamation-triangle' : 'fas fa-check-circle'; // 提取查询类型 - const batchTypeMatch = firstLog?.message.match(/开始(\w+)查询批次/); + const batchTypeMatch = firstLog?.message.match(/开始(\w+)查询批次/) || firstLog?.message.match(/🚀 开始执行(\w+)数据比较/); const batchType = batchTypeMatch ? batchTypeMatch[1] : '未知'; // 提取并格式化查询日期 @@ -3479,13 +3497,6 @@ function displayModalGroupedQueryLogs(groupedLogs) { second: '2-digit' }) : '未知时间'; - // 简化的日期显示(仅显示日期部分) - const queryDateShort = firstLog ? new Date(firstLog.timestamp).toLocaleDateString('zh-CN', { - year: 'numeric', - month: '2-digit', - day: '2-digit' - }) : '未知'; - // 检查是否有关联的历史记录ID const historyId = firstLog?.history_id; const historyBadge = historyId ? @@ -3505,7 +3516,7 @@ function displayModalGroupedQueryLogs(groupedLogs) {