From f69ff422da99df513253df5ca4ab836aecab8853 Mon Sep 17 00:00:00 2001 From: HUAHUAI23 Date: Mon, 3 Jun 2024 08:06:17 +0000 Subject: [PATCH 1/5] fix(web): adjust transparency of the overlay for application startup logs --- web/src/pages/app/mods/StatusBar/LogsModal/initLog.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/src/pages/app/mods/StatusBar/LogsModal/initLog.tsx b/web/src/pages/app/mods/StatusBar/LogsModal/initLog.tsx index a506a69178..e7d71378e8 100644 --- a/web/src/pages/app/mods/StatusBar/LogsModal/initLog.tsx +++ b/web/src/pages/app/mods/StatusBar/LogsModal/initLog.tsx @@ -112,7 +112,7 @@ export default function InitLog() {
Date: Wed, 19 Jun 2024 10:08:49 +0000 Subject: [PATCH 2/5] chore(web): Optimize log display logic --- .../AddDependenceModal/index.tsx | 1 - .../app/mods/StatusBar/LogsModal/index.tsx | 13 +++++++---- .../app/mods/StatusBar/LogsModal/initLog.tsx | 23 +++++++++++-------- 3 files changed, 22 insertions(+), 15 deletions(-) diff --git a/web/src/pages/app/functions/mods/DependencePanel/AddDependenceModal/index.tsx b/web/src/pages/app/functions/mods/DependencePanel/AddDependenceModal/index.tsx index 47efa8161f..3ea6ddb40e 100644 --- a/web/src/pages/app/functions/mods/DependencePanel/AddDependenceModal/index.tsx +++ b/web/src/pages/app/functions/mods/DependencePanel/AddDependenceModal/index.tsx @@ -385,7 +385,6 @@ const AddDependenceModal = () => { > {t("FunctionPanel.Select")}: - {/* {t("FunctionPanel.Select")}: */} {isEdit ? ( packageList.length diff --git a/web/src/pages/app/mods/StatusBar/LogsModal/index.tsx b/web/src/pages/app/mods/StatusBar/LogsModal/index.tsx index 0b6f0a232d..61f425e0ee 100644 --- a/web/src/pages/app/mods/StatusBar/LogsModal/index.tsx +++ b/web/src/pages/app/mods/StatusBar/LogsModal/index.tsx @@ -156,10 +156,11 @@ export default function LogsModal(props: { children: React.ReactElement }) { useEffect(() => { if (!isOpen) return; - setRowCount(0); + setPaused(false); setLogs([]); + setRowCount(0); setIsLoading(true); - setPaused(false); + const ctrl = fetchLogs(); return () => { @@ -168,7 +169,9 @@ export default function LogsModal(props: { children: React.ReactElement }) { }, [podName, containerName, isOpen, refresh, fetchLogs]); useEffect(() => { - const sortedLogs = logs.sort((a, b) => parseInt(a.id) - parseInt(b.id)); + if (logs.length === 0) return; + + const sortedLogs = [...logs].sort((a, b) => parseInt(a.id) - parseInt(b.id)); const concatenatedLogs = sortedLogs.map((log) => log.data).join(""); setRenderLogs(concatenatedLogs); const totalRows = concatenatedLogs.split("\n").length; @@ -260,10 +263,10 @@ export default function LogsModal(props: { children: React.ReactElement }) { { - if (e.scrollOffsetToBottom <= 0) { + if (e.scrollOffsetToBottom <= 5) { setPaused(false); return; } diff --git a/web/src/pages/app/mods/StatusBar/LogsModal/initLog.tsx b/web/src/pages/app/mods/StatusBar/LogsModal/initLog.tsx index 176b11fa46..3abee21fd2 100644 --- a/web/src/pages/app/mods/StatusBar/LogsModal/initLog.tsx +++ b/web/src/pages/app/mods/StatusBar/LogsModal/initLog.tsx @@ -82,10 +82,11 @@ export default function InitLog() { }, [currentApp.appid]); useEffect(() => { - setRowCount(0); + setPaused(false); setLogs([]); + setRowCount(0); setIsLoading(true); - setPaused(false); + const ctrl = fetchLogs(); return () => { @@ -94,11 +95,15 @@ export default function InitLog() { }, [fetchLogs]); useEffect(() => { - const sortedLogs = logs.sort((a, b) => parseInt(a.id) - parseInt(b.id)); - const concatenatedLogs = sortedLogs.map((log) => log.data).join(""); - setRenderLogs(concatenatedLogs); - const totalRows = concatenatedLogs.split("\n").length; - setRowCount(totalRows); + if (logs.length === 0) return; + + const sortedLogs = [...logs].sort((a, b) => parseInt(a.id) - parseInt(b.id)); + const logLines = sortedLogs.flatMap((log) => log.data.split("\n")); + const filteredLogLines = logLines.filter((line) => line.trim() !== ""); + const uniqueLogLines = Array.from(new Set(filteredLogLines)); + + setRenderLogs(uniqueLogLines.join("\n")); + setRowCount(uniqueLogLines.length); }, [logs]); return ( @@ -121,10 +126,10 @@ export default function InitLog() { { - if (e.scrollOffsetToBottom <= 0) { + if (e.scrollOffsetToBottom <= 5) { setPaused(false); return; } From 0947e7fc5af88ba33d042769b7efca9bec44904f Mon Sep 17 00:00:00 2001 From: HUAHUAI23 Date: Thu, 20 Jun 2024 08:17:44 +0000 Subject: [PATCH 3/5] chore(web): fix bouns display --- web/src/components/ChargeButton/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/src/components/ChargeButton/index.tsx b/web/src/components/ChargeButton/index.tsx index 37ebb6510f..7493d0d513 100644 --- a/web/src/components/ChargeButton/index.tsx +++ b/web/src/components/ChargeButton/index.tsx @@ -105,7 +105,7 @@ export default function ChargeButton(props: { amount?: number; children: React.R
{(bonus || []).map((item) => (
- {item.reward && ( + {item.reward !== 0 && ( {t("application.bonus")} ¥{item.reward / 100} From 86f3170941f79008869a0a4250ad2a1315debfdd Mon Sep 17 00:00:00 2001 From: HUAHUAI23 Date: Wed, 26 Jun 2024 08:20:37 +0000 Subject: [PATCH 4/5] chore(web&server): database repair, rollback on dependency restart... --- .../dedicated-database.service.ts | 3 ++- server/src/dependency/dependency.service.ts | 21 ++++++++----------- .../initializer/deploy-manifest/database.yaml | 2 +- server/src/instance/instance-task.service.ts | 6 +++--- .../SysSetting/DatabaseMonitor/index.tsx | 2 ++ 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/server/src/database/dedicated-database/dedicated-database.service.ts b/server/src/database/dedicated-database/dedicated-database.service.ts index 2379fda632..9dd903bf40 100644 --- a/server/src/database/dedicated-database/dedicated-database.service.ts +++ b/server/src/database/dedicated-database/dedicated-database.service.ts @@ -137,7 +137,7 @@ export class DedicatedDatabaseService { limitMemory, requestCPU, requestMemory, - capacity, + capacity: capacity / 1024, replicas, }) @@ -200,6 +200,7 @@ export class DedicatedDatabaseService { options: { authSource: 'admin', replicaSet: `${name}-mongodb`, + readPreference: 'secondaryPreferred', w: 'majority', }, scheme: 'mongodb', diff --git a/server/src/dependency/dependency.service.ts b/server/src/dependency/dependency.service.ts index 1083548f95..4419f03d22 100644 --- a/server/src/dependency/dependency.service.ts +++ b/server/src/dependency/dependency.service.ts @@ -55,14 +55,13 @@ export class DependencyService { const new_deps = dto.map((dep) => `${dep.name}@${dep.spec}`) const deps = extras.concat(new_deps) - const res = await this.db + await this.db .collection('ApplicationConfiguration') - .findOneAndUpdate( + .updateOne( { appid }, { $set: { dependencies: deps, updatedAt: new Date() } }, - { returnDocument: 'after' }, ) - await this.confService.publish(res.value) + return true } @@ -87,14 +86,13 @@ export class DependencyService { const deps = filtered.concat(new_deps) - const res = await this.db + await this.db .collection('ApplicationConfiguration') - .findOneAndUpdate( + .updateOne( { appid }, { $set: { dependencies: deps, updatedAt: new Date() } }, - { returnDocument: 'after' }, ) - await this.confService.publish(res.value) + return true } @@ -107,14 +105,13 @@ export class DependencyService { if (filtered.length === deps.length) return false - const res = await this.db + await this.db .collection('ApplicationConfiguration') - .findOneAndUpdate( + .updateOne( { appid }, { $set: { dependencies: filtered, updatedAt: new Date() } }, - { returnDocument: 'after' }, ) - await this.confService.publish(res.value) + return true } diff --git a/server/src/initializer/deploy-manifest/database.yaml b/server/src/initializer/deploy-manifest/database.yaml index 90a20d2645..8c668cd33b 100644 --- a/server/src/initializer/deploy-manifest/database.yaml +++ b/server/src/initializer/deploy-manifest/database.yaml @@ -38,6 +38,6 @@ spec: - ReadWriteOnce resources: requests: - storage: <%- capacity %>Mi + storage: <%- capacity %>Gi terminationPolicy: Delete tolerations: [] diff --git a/server/src/instance/instance-task.service.ts b/server/src/instance/instance-task.service.ts index 8903796f9e..e5ec0d317b 100644 --- a/server/src/instance/instance-task.service.ts +++ b/server/src/instance/instance-task.service.ts @@ -130,9 +130,6 @@ export class InstanceTaskService { return } - // create instance - await this.instanceService.create(app.appid) - const appid = app.appid const ddb = await this.dedicatedDatabaseService.findOne(appid) @@ -152,6 +149,9 @@ export class InstanceTaskService { } } + // create instance + await this.instanceService.create(app.appid) + const instance = await this.instanceService.get(appid) const unavailable = instance.deployment?.status?.unavailableReplicas || false diff --git a/web/src/pages/app/setting/SysSetting/DatabaseMonitor/index.tsx b/web/src/pages/app/setting/SysSetting/DatabaseMonitor/index.tsx index d6be22e590..6f689ec78d 100644 --- a/web/src/pages/app/setting/SysSetting/DatabaseMonitor/index.tsx +++ b/web/src/pages/app/setting/SysSetting/DatabaseMonitor/index.tsx @@ -66,7 +66,9 @@ export default function DatabaseMonitor() { metric: Record; values: Array<[number, string]>; }[] = resourceData?.data?.memory; + const podList = useMemo(() => { + if (!cpuData || !memoryData) return []; const cpuPods = cpuData.map((item) => item.metric.pod); const memoryPods = memoryData.map((item) => item.metric.pod); From e773231768cba97855fa00bdf849203bc505d33c Mon Sep 17 00:00:00 2001 From: HUAHUAI23 Date: Tue, 16 Jul 2024 12:12:19 +0000 Subject: [PATCH 5/5] chore(runtime): Fix strange dependency installation during runtime startup --- runtimes/nodejs/start.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/runtimes/nodejs/start.sh b/runtimes/nodejs/start.sh index f88fec2dae..cff2ed7562 100644 --- a/runtimes/nodejs/start.sh +++ b/runtimes/nodejs/start.sh @@ -1,13 +1,13 @@ #!/bin/sh -ln -s $CUSTOM_DEPENDENCY_BASE_PATH/node_modules $PWD/functions/node_modules > /dev/null 2>&1 +ln -s $CUSTOM_DEPENDENCY_BASE_PATH/node_modules $PWD/functions/node_modules >/dev/null 2>&1 # generate package.json -( - cd $CUSTOM_DEPENDENCY_BASE_PATH - npm install $DEPENDENCIES $NPM_INSTALL_FLAGS > /dev/null 2>&1 -) +# ( +# cd $CUSTOM_DEPENDENCY_BASE_PATH +# npm install $DEPENDENCIES $NPM_INSTALL_FLAGS > /dev/null 2>&1 +# ) # source .env echo "****** start service: node $FLAGS --experimental-vm-modules --experimental-fetch ./dist/index.js *******" -exec node $FLAGS --experimental-vm-modules --experimental-fetch ./dist/index.js \ No newline at end of file +exec node $FLAGS --experimental-vm-modules --experimental-fetch ./dist/index.js