diff --git a/apps/api/src/lib/buildPacks/common.ts b/apps/api/src/lib/buildPacks/common.ts index a357b64b6..31a544d97 100644 --- a/apps/api/src/lib/buildPacks/common.ts +++ b/apps/api/src/lib/buildPacks/common.ts @@ -472,13 +472,12 @@ export const saveBuildLog = async ({ if (isDev) { console.debug(`[${applicationId}] ${addTimestamp}`); + return await prisma.buildLog.create({ + data: { + line: addTimestamp, buildId, time: Number(day().valueOf()), applicationId + } + }); } - // return await prisma.buildLog.create({ - // data: { - // line: addTimestamp, buildId, time: Number(day().valueOf()), applicationId - // } - // }); - return await got.post(`${fluentBitUrl}/${applicationId}_buildlog_${buildId}.csv`, { json: { line: encrypt(line) diff --git a/apps/ui/src/routes/applications/[id]/logs/_BuildLog.svelte b/apps/ui/src/routes/applications/[id]/logs/_BuildLog.svelte index 69bbf0be8..d0bdffdb2 100644 --- a/apps/ui/src/routes/applications/[id]/logs/_BuildLog.svelte +++ b/apps/ui/src/routes/applications/[id]/logs/_BuildLog.svelte @@ -163,9 +163,9 @@ > {#each logs as log} {#if fromDb} -
[{day.unix(log.time).format('HH:mm:ss.SSS')}] {log.line + '\n'}
- {:else}
{log.line + '\n'}
+ {:else} +
[{day.unix(log.time).format('HH:mm:ss.SSS')}] {log.line + '\n'}
{/if} {/each} diff --git a/apps/ui/src/routes/applications/[id]/logs/build.svelte b/apps/ui/src/routes/applications/[id]/logs/build.svelte index 7205f716a..65834bc19 100644 --- a/apps/ui/src/routes/applications/[id]/logs/build.svelte +++ b/apps/ui/src/routes/applications/[id]/logs/build.svelte @@ -23,7 +23,6 @@ export let application: any; export let buildCount: any; import { page } from '$app/stores'; - console.log(builds[0].createdAt); import { addToast } from '$lib/store'; import BuildLog from './_BuildLog.svelte'; import { get, post } from '$lib/api'; @@ -31,35 +30,52 @@ import { changeQueryParams, dateOptions, errorNotification, asyncSleep } from '$lib/common'; import Tooltip from '$lib/components/Tooltip.svelte'; import { day } from '$lib/dayjs'; + import { onDestroy, onMount } from 'svelte'; + const { id } = $page.params; + + let loadBuildLogsInterval: any = null; let buildId: any; let skip = 0; let noMoreBuilds = buildCount < 5 || buildCount <= skip; - const { id } = $page.params; let preselectedBuildId = $page.url.searchParams.get('buildId'); if (preselectedBuildId) buildId = preselectedBuildId; - async function updateBuildStatus({ detail }: { detail: any }) { - const { status } = detail; - if (status !== 'running') { - try { - const data = await get(`/applications/${id}/logs/build?buildId=${buildId}`); - builds = builds.filter((build: any) => { - if (build.id === data.builds[0].id) { - build.status = data.builds[0].status; - } - return build; - }); - } catch (error) { - return errorNotification(error); - } - } else { - builds = builds.filter((build: any) => { - if (build.id === buildId) build.status = status; - return build; - }); - } + onMount(async () => { + getBuildLogs(); + loadBuildLogsInterval = setInterval(() => { + getBuildLogs(); + }, 2000); + + }); + onDestroy(() => { + clearInterval(loadBuildLogsInterval); + }); + async function getBuildLogs() { + const response = await get(`/applications/${$page.params.id}/logs/build?skip=0`); + builds = response.builds; } + // async function updateBuildStatus({ detail }: { detail: any }) { + // const { status } = detail; + // if (status !== 'running') { + // try { + // const data = await get(`/applications/${id}/logs/build?buildId=${buildId}`); + // builds = builds.filter((build: any) => { + // if (build.id === data.builds[0].id) { + // build.status = data.builds[0].status; + // } + // return build; + // }); + // } catch (error) { + // return errorNotification(error); + // } + // } else { + // builds = builds.filter((build: any) => { + // if (build.id === buildId) build.status = status; + // return build; + // }); + // } + // } async function loadMoreBuilds() { if (buildCount >= skip) { skip = skip + 5; @@ -198,7 +214,7 @@ {#if build.status === 'running'}
{(day().utc().diff(day(build.createdAt)) / 1000).toFixed(0)}s{day(build.updatedAt).utc().diff(day(build.createdAt)) / 1000}s
{:else} @@ -233,7 +249,7 @@
{#if buildId} {#key buildId} - + {/key} {/if}
diff --git a/docker-compose-dev.yaml b/docker-compose-dev.yaml index 4f0a4959a..01b88c1bb 100644 --- a/docker-compose-dev.yaml +++ b/docker-compose-dev.yaml @@ -2,12 +2,10 @@ version: '3.8' services: fluent-bit: - image: fluent/fluent-bit:1.9.8 + image: coollabsio/coolify-fluent-bit:1.0.0 container_name: coolify-fluentbit volumes: - ./logs:/logs - - ./others/fluentbit/fluent-bit.conf:/fluent-bit/etc/fluent-bit.conf - - ./others/fluentbit/parser.conf:/fluent-bit/etc/parser.conf ports: - "24224:24224" networks: diff --git a/docker-compose.yaml b/docker-compose.yaml index 9ff26cedf..1cbf6dd06 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -22,7 +22,7 @@ services: networks: - coolify-infra fluent-bit: - image: coollabsio/coolify-fluent-bit:1.9.8 + image: coollabsio/coolify-fluent-bit:1.0.0 container_name: coolify-fluentbit volumes: - 'coolify-logs:/app/logs'