From 3e068a0020ac12622110dbde136c095b1136b4ac Mon Sep 17 00:00:00 2001 From: zhengkunwang223 <31820853+zhengkunwang223@users.noreply.github.com> Date: Tue, 23 May 2023 15:47:43 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=97=A5=E5=BF=97=E5=AE=A1=E8=AE=A1?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=BD=91=E7=AB=99=E6=97=A5=E5=BF=97=20(#1114?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/service/website.go | 5 + backend/constant/website.go | 1 + frontend/src/lang/modules/en.ts | 3 + frontend/src/lang/modules/zh.ts | 3 + frontend/src/routers/modules/log.ts | 10 ++ frontend/src/views/log/index.vue | 4 + frontend/src/views/log/website/index.vue | 153 ++++++++++++++++++ .../website/config/log/log-fiile/index.vue | 6 +- 8 files changed, 182 insertions(+), 3 deletions(-) create mode 100644 frontend/src/views/log/website/index.vue diff --git a/backend/app/service/website.go b/backend/app/service/website.go index a04d25ede..562301058 100644 --- a/backend/app/service/website.go +++ b/backend/app/service/website.go @@ -907,6 +907,11 @@ func (w WebsiteService) OpWebsiteLog(req request.WebsiteLogReq) (*response.Websi if err := websiteRepo.Save(context.Background(), &website); err != nil { return nil, err } + case constant.DeleteLog: + logPath := path.Join(nginx.Install.GetPath(), "www", "sites", website.Alias, "log", req.LogType) + if err := files.NewFileOp().WriteFile(logPath, strings.NewReader(""), 0755); err != nil { + return nil, err + } } return res, nil } diff --git a/backend/constant/website.go b/backend/constant/website.go index 354909de2..6392fd4fe 100644 --- a/backend/constant/website.go +++ b/backend/constant/website.go @@ -38,6 +38,7 @@ const ( GetLog = "get" DisableLog = "disable" EnableLog = "enable" + DeleteLog = "delete" AccessLog = "access.log" ErrorLog = "error.log" diff --git a/frontend/src/lang/modules/en.ts b/frontend/src/lang/modules/en.ts index 8aa362771..65f15caca 100644 --- a/frontend/src/lang/modules/en.ts +++ b/frontend/src/lang/modules/en.ts @@ -747,6 +747,9 @@ const message = { logout: ' logout', }, status: 'status', + websiteLog: 'Website Log', + runLog: 'Run Log', + errLog: 'Err Log', }, file: { dir: 'Folder', diff --git a/frontend/src/lang/modules/zh.ts b/frontend/src/lang/modules/zh.ts index 27c46b8b1..f1dba76ab 100644 --- a/frontend/src/lang/modules/zh.ts +++ b/frontend/src/lang/modules/zh.ts @@ -752,6 +752,9 @@ const message = { logout: '退出', }, status: '状态', + websiteLog: '网站日志', + runLog: '运行日志', + errLog: '错误日志', }, file: { dir: '文件夹', diff --git a/frontend/src/routers/modules/log.ts b/frontend/src/routers/modules/log.ts index f1ea6f39d..8db55d2f5 100644 --- a/frontend/src/routers/modules/log.ts +++ b/frontend/src/routers/modules/log.ts @@ -37,6 +37,16 @@ const logsRouter = { requiresAuth: false, }, }, + { + path: 'website', + name: 'WebsiteLog', + component: () => import('@/views/log/website/index.vue'), + hidden: true, + meta: { + activeMenu: '/logs', + requiresAuth: false, + }, + }, { path: 'system', name: 'SystemLog', diff --git a/frontend/src/views/log/index.vue b/frontend/src/views/log/index.vue index 03fe7531e..5590ce6b8 100644 --- a/frontend/src/views/log/index.vue +++ b/frontend/src/views/log/index.vue @@ -19,5 +19,9 @@ const buttons = [ label: i18n.global.t('ssh.loginLogs'), path: '/logs/ssh', }, + { + label: i18n.global.t('logs.websiteLog'), + path: '/logs/website', + }, ]; diff --git a/frontend/src/views/log/website/index.vue b/frontend/src/views/log/website/index.vue new file mode 100644 index 000000000..e07ddb0ae --- /dev/null +++ b/frontend/src/views/log/website/index.vue @@ -0,0 +1,153 @@ + + diff --git a/frontend/src/views/website/website/config/log/log-fiile/index.vue b/frontend/src/views/website/website/config/log/log-fiile/index.vue index 1f3958a84..a80a4b22d 100644 --- a/frontend/src/views/website/website/config/log/log-fiile/index.vue +++ b/frontend/src/views/website/website/config/log/log-fiile/index.vue @@ -61,12 +61,12 @@ const logType = computed(() => { const id = computed(() => { return props.id; }); -let loading = ref(false); -let data = ref({ +const loading = ref(false); +const data = ref({ enable: false, content: '', }); -let tailLog = ref(false); +const tailLog = ref(false); let timer: NodeJS.Timer | null = null; const view = shallowRef();