|
|
@ -311,13 +311,24 @@ |
|
|
|
|
|
|
|
// 格式化日志条目为 HTML 字符串 |
|
|
|
function formatLogItem(log, index) { |
|
|
|
// 时间戳是毫秒数,直接用于Date构造函数 |
|
|
|
const timestamp = new Date(log.timestamp).toISOString(); |
|
|
|
let timestamp = 'Invalid Date'; |
|
|
|
if (log && log.timestamp) { |
|
|
|
const date = new Date(log.timestamp); |
|
|
|
// 验证创建的日期对象是否有效 |
|
|
|
if (date instanceof Date && !isNaN(date)) { |
|
|
|
timestamp = date.toISOString(); |
|
|
|
} else { |
|
|
|
console.warn(`Could not parse timestamp: ${log.timestamp} for log:`, log); |
|
|
|
} |
|
|
|
} else { |
|
|
|
console.warn('Timestamp is missing for log:', log); |
|
|
|
} |
|
|
|
|
|
|
|
return `<div class="log-item" data-index="${index}"> |
|
|
|
<span class="log-timestamp" title="${timestamp}">${timestamp}</span> |
|
|
|
<span class="log-layer" title="${log.layer}">${log.layer}</span> |
|
|
|
<span class="log-layer" title="${log.layer || ''}">${log.layer || ''}</span> |
|
|
|
<span class="log-direction" title="${formatDirection(log.direction)}">${formatDirection(log.direction)}</span> |
|
|
|
<span class="log-message" title="${log.message}">${log.message}</span> |
|
|
|
<span class="log-message" title="${log.message || ''}">${log.message || ''}</span> |
|
|
|
<span class="log-info" title="${log.info || ''}">${log.info || ''}</span> |
|
|
|
</div>`; |
|
|
|
} |
|
|
@ -352,7 +363,18 @@ |
|
|
|
|
|
|
|
detailPlaceholder.classList.add('d-none'); |
|
|
|
|
|
|
|
const timestamp = new Date(log.timestamp).toISOString(); |
|
|
|
let timestamp = 'Invalid Date'; |
|
|
|
if (log && log.timestamp) { |
|
|
|
const date = new Date(log.timestamp); |
|
|
|
// 验证创建的日期对象是否有效 |
|
|
|
if (date instanceof Date && !isNaN(date)) { |
|
|
|
timestamp = date.toISOString(); |
|
|
|
} else { |
|
|
|
console.warn(`Could not parse timestamp in detail view: ${log.timestamp} for log:`, log); |
|
|
|
} |
|
|
|
} else { |
|
|
|
console.warn('Timestamp is missing for log detail:', log); |
|
|
|
} |
|
|
|
|
|
|
|
const detailHtml = ` |
|
|
|
<div class="detail-item"> |
|
|
@ -361,7 +383,7 @@ |
|
|
|
</div> |
|
|
|
<div class="detail-item"> |
|
|
|
<div class="detail-item-label">Layer</div> |
|
|
|
<div class="detail-item-value">${log.layer}</div> |
|
|
|
<div class="detail-item-value">${log.layer || 'N/A'}</div> |
|
|
|
</div> |
|
|
|
<div class="detail-item"> |
|
|
|
<div class="detail-item-label">Direction</div> |
|
|
@ -381,7 +403,7 @@ |
|
|
|
</div> |
|
|
|
<div class="detail-item"> |
|
|
|
<div class="detail-item-label">Message</div> |
|
|
|
<div class="detail-item-value">${log.message}</div> |
|
|
|
<div class="detail-item-value">${log.message || ''}</div> |
|
|
|
</div> |
|
|
|
<div class="detail-item"> |
|
|
|
<div class="detail-item-label">Info</div> |
|
|
|