Add job logging and increase timeout to 20 minutes
All checks were successful
Build and Push Frontend Docker Image / build (push) Successful in 39s
Build and Push Docker Image / build (push) Successful in 31m7s

- Add JobLogger class to handler.py for structured timestamped logging
- Increase MAX_TIMEOUT from 600s to 1200s (20 minutes)
- Add logs column to generated_content table via migration
- Store and display job execution logs in gallery UI
- Add Logs button to gallery items with modal display

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Debian
2026-01-08 02:10:55 +00:00
parent 52dd0d8766
commit 3c421cf7b8
10 changed files with 269 additions and 46 deletions

View File

@@ -766,3 +766,65 @@ body {
text-shadow: 0 1px 3px rgba(0,0,0,0.5);
pointer-events: none;
}
/* Logs Modal */
.logs-container {
background: var(--gray-100);
border-radius: var(--radius);
padding: 15px;
}
.logs-status {
margin-bottom: 12px;
font-size: 14px;
}
.logs-status .badge {
margin-left: 8px;
}
.badge-completed { background: var(--success); color: white; }
.badge-processing { background: var(--warning); color: var(--gray-900); }
.badge-pending { background: var(--gray-500); color: white; }
.badge-failed { background: var(--danger); color: white; }
.logs-error {
background: #f8d7da;
color: #721c24;
padding: 12px;
border-radius: var(--radius);
margin-bottom: 12px;
font-size: 13px;
}
.logs-content {
font-family: 'SF Mono', Monaco, 'Andale Mono', monospace;
font-size: 12px;
line-height: 1.6;
background: var(--gray-900);
color: #e0e0e0;
padding: 15px;
border-radius: var(--radius);
max-height: 400px;
overflow-y: auto;
white-space: pre-wrap;
word-break: break-word;
}
.logs-content::-webkit-scrollbar {
width: 8px;
}
.logs-content::-webkit-scrollbar-track {
background: var(--gray-800);
border-radius: 4px;
}
.logs-content::-webkit-scrollbar-thumb {
background: var(--gray-600);
border-radius: 4px;
}
.logs-content::-webkit-scrollbar-thumb:hover {
background: var(--gray-500);
}