fix: fluentbit and logs

This commit is contained in:
Andras Bacsai 2022-09-15 10:56:19 +02:00
parent 38acc16e1c
commit 85990dd074
5 changed files with 49 additions and 36 deletions

View File

@ -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)

View File

@ -163,9 +163,9 @@
>
{#each logs as log}
{#if fromDb}
<div>[{day.unix(log.time).format('HH:mm:ss.SSS')}] {log.line + '\n'}</div>
{:else}
<div>{log.line + '\n'}</div>
{:else}
<div>[{day.unix(log.time).format('HH:mm:ss.SSS')}] {log.line + '\n'}</div>
{/if}
{/each}
</div>

View File

@ -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'}
<div>
<span class="font-bold text-xl"
>{(day().utc().diff(day(build.createdAt)) / 1000).toFixed(0)}s</span
>{day(build.updatedAt).utc().diff(day(build.createdAt)) / 1000}s</span
>
</div>
{:else}
@ -233,7 +249,7 @@
<div class="flex-1 md:w-96">
{#if buildId}
{#key buildId}
<svelte:component this={BuildLog} {buildId} on:updateBuildStatus={updateBuildStatus} />
<svelte:component this={BuildLog} {buildId} />
{/key}
{/if}
</div>

View File

@ -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:

View File

@ -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'