diff --git a/src/routes/arr/[id]/logs/+page.server.ts b/src/routes/arr/[id]/logs/+page.server.ts index 8d689d8..d66b1d8 100644 --- a/src/routes/arr/[id]/logs/+page.server.ts +++ b/src/routes/arr/[id]/logs/+page.server.ts @@ -1,34 +1,6 @@ import { error } from '@sveltejs/kit'; import type { ServerLoad } from '@sveltejs/kit'; import { arrInstancesQueries } from '$db/queries/arrInstances.ts'; -import { readFilteredLogs } from '$logger/reader.ts'; -import type { UpgradeJobLog } from '$lib/server/upgrades/types.ts'; - -/** - * Extract UpgradeJobLog from a DEBUG log entry - * DEBUG logs contain the full structured log in the meta field - */ -function extractUpgradeJobLog(meta: unknown): UpgradeJobLog | null { - if (!meta || typeof meta !== 'object') return null; - - const log = meta as Record; - - // Check for required UpgradeJobLog fields - if ( - typeof log.id === 'string' && - typeof log.instanceId === 'number' && - typeof log.status === 'string' && - log.config && - log.library && - log.filter && - log.selection && - log.results - ) { - return log as unknown as UpgradeJobLog; - } - - return null; -} export const load: ServerLoad = async ({ params }) => { const id = parseInt(params.id || '', 10); @@ -43,34 +15,7 @@ export const load: ServerLoad = async ({ params }) => { error(404, `Instance not found: ${id}`); } - // Load upgrade job logs for this instance - const logs = await readFilteredLogs({ - source: 'UpgradeJob', - instanceId: id - }); - - // Extract full UpgradeJobLog objects from DEBUG entries - const upgradeRuns: UpgradeJobLog[] = []; - const seenIds = new Set(); - - for (const log of logs) { - if (log.level === 'DEBUG' && log.meta) { - const upgradeLog = extractUpgradeJobLog(log.meta); - if (upgradeLog && !seenIds.has(upgradeLog.id)) { - seenIds.add(upgradeLog.id); - upgradeRuns.push(upgradeLog); - } - } - } - - // Sort by startedAt (newest first) - upgradeRuns.sort( - (a, b) => new Date(b.startedAt).getTime() - new Date(a.startedAt).getTime() - ); - return { - instance, - logs, - upgradeRuns + instance }; }; diff --git a/src/routes/arr/[id]/logs/+page.svelte b/src/routes/arr/[id]/logs/+page.svelte index 92095da..9ee04fd 100644 --- a/src/routes/arr/[id]/logs/+page.svelte +++ b/src/routes/arr/[id]/logs/+page.svelte @@ -1,122 +1,13 @@ {data.instance.name} - Logs - Profilarr -
- -
-
-

Upgrade Logs

-

- View upgrade job history for this {data.instance.type} instance. -

-
- -
- - -
- -
-
- {stats.total} total runs -
- {#if stats.success > 0} -
- {stats.success} successful -
- {/if} - {#if stats.partial > 0} -
- {stats.partial} partial -
- {/if} - {#if stats.failed > 0} -
- {stats.failed} failed -
- {/if} -
- - -
- {#each statusFilters as filter} - - {/each} -
-
- - - {#if filteredRuns.length === 0} -
-

- {#if data.upgradeRuns.length === 0} - No upgrade runs yet. Configure upgrades and run a test to see logs here. - {:else} - No runs match the selected filter. - {/if} -

-
- {:else} -
- {#each filteredRuns as run, index (run.id)} - - {/each} -
- {/if} +
+
diff --git a/src/routes/arr/[id]/logs/components/UpgradeRunCard.svelte b/src/routes/arr/[id]/logs/components/UpgradeRunCard.svelte deleted file mode 100644 index cee299e..0000000 --- a/src/routes/arr/[id]/logs/components/UpgradeRunCard.svelte +++ /dev/null @@ -1,278 +0,0 @@ - - - - -
- -
(expanded = !expanded)} class="flex cursor-pointer items-start justify-between gap-4 p-4"> -
- -
- #{runNumber} - - {run.config.selectedFilter || 'Unknown Filter'} - - {#if run.config.dryRun} - - DRY RUN - - {/if} -
- - -
- {formatDate(run.startedAt)} @ {formatTime(run.startedAt)} - | - {formatDuration(run.startedAt, run.completedAt)} -
-
- - -
- - - {run.status.charAt(0).toUpperCase() + run.status.slice(1)} - - -
-
- - - {#if expanded} -
-
- -
- Config - - Schedule: {formatSchedule(run.config.schedule)} | Mode: {formatFilterMode(run.config.filterMode)} - -
- - -
- Library - - {run.library.totalItems.toLocaleString()} items - {#if run.library.fetchedFromCache} - (cached) - {/if} - - ({run.library.fetchDurationMs}ms) - - -
- - -
- Filter - - "{run.filter.name}" - - {run.filter.matchedCount} matched - - {run.filter.afterCooldown} after cooldown - -
- - -
- Selection - - {formatMethod(run.selection.method)} - {run.selection.actualCount} of {run.selection.requestedCount} - -
- - -
- Results - - {run.results.searchesTriggered} searches triggered, - {run.results.successful} successful - {#if run.results.failed > 0} - , {run.results.failed} failed - {/if} - -
- - - {#if run.results.errors.length > 0} -
- Notes -
- {#each run.results.errors as error} -
{error}
- {/each} -
-
- {/if} - - - {#if run.selection.items.length > 0} -
-
- - Items Searched -
-
- {#each run.selection.items as item} -
- -
- {item.title} - {#if item.upgrade} - = 0 ? 'success' : 'danger'}> - - - {:else} - No upgrade - {/if} -
- - -
-
Current File
-
-
- {item.original.fileName} -
-
- - Score: - - {#if item.original.formats.length > 0} - | -
- {#each item.original.formats as format} - {format} - {/each} -
- {/if} -
-
-
- - - {#if item.upgrade} -
-
Upgrade Available
-
-
- {item.upgrade.release} -
-
- - Score: - - {#if item.upgrade.formats.length > 0} - | -
- {#each item.upgrade.formats as format} - {format} - {/each} -
- {/if} -
-
-
- {/if} -
- {/each} -
-
- {/if} -
-
- {/if} -
diff --git a/src/routes/arr/[id]/sync/+page.svelte b/src/routes/arr/[id]/sync/+page.svelte index 64c49d2..95085f7 100644 --- a/src/routes/arr/[id]/sync/+page.svelte +++ b/src/routes/arr/[id]/sync/+page.svelte @@ -1,5 +1,6 @@