From 4c6d8cd20cd01426a9d28e8fe2cc5fb4e7351556 Mon Sep 17 00:00:00 2001 From: ssongliu Date: Thu, 16 Mar 2023 15:58:45 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=A4=87=E4=BB=BD=E6=81=A2=E5=A4=8D?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=80=E4=BA=9B=E5=A4=B1=E8=B4=A5=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/service/backup_app.go | 3 +++ backend/app/service/backup_website.go | 8 +++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/backend/app/service/backup_app.go b/backend/app/service/backup_app.go index 4828a477f..aeed9f0c4 100644 --- a/backend/app/service/backup_app.go +++ b/backend/app/service/backup_app.go @@ -181,16 +181,19 @@ func handleAppRecover(install *model.AppInstall, recoverFile string, isRollback return err } if err := handleMysqlRecover(mysqlInfo, tmpPath, db.Name, fmt.Sprintf("%s.sql.gz", install.Name), true); err != nil { + global.LOG.Errorf("handle recover from sql.gz failed, err: %v", err) return err } } if err := handleUnTar(tmpPath+"/app.tar.gz", fmt.Sprintf("%s/%s", constant.AppInstallDir, install.App.Key)); err != nil { + global.LOG.Errorf("handle recover from app.tar.gz failed, err: %v", err) return err } oldInstall.Status = constant.Running if err := appInstallRepo.Save(install); err != nil { + global.LOG.Errorf("save db app install failed, err: %v", err) return err } isOk = true diff --git a/backend/app/service/backup_website.go b/backend/app/service/backup_website.go index 427f07eb5..902bff755 100644 --- a/backend/app/service/backup_website.go +++ b/backend/app/service/backup_website.go @@ -106,8 +106,8 @@ func handleWebsiteRecover(website *model.Website, recoverFile string, isRollback return fmt.Errorf("backup website %s for rollback before recover failed, err: %v", website.Alias, err) } defer func() { - global.LOG.Info("recover failed, start to rollback now") if !isOk { + global.LOG.Info("recover failed, start to rollback now") if err := handleWebsiteRecover(website, rollbackFile, true); err != nil { global.LOG.Errorf("rollback website %s from %s failed, err: %v", website.Alias, rollbackFile, err) return @@ -126,6 +126,7 @@ func handleWebsiteRecover(website *model.Website, recoverFile string, isRollback } nginxConfPath := fmt.Sprintf("%s/openresty/%s/conf/conf.d", constant.AppInstallDir, nginxInfo.Name) if err := fileOp.CopyFile(fmt.Sprintf("%s/%s.conf", tmpPath, website.Alias), nginxConfPath); err != nil { + global.LOG.Errorf("handle recover from conf.d failed, err: %v", err) return err } @@ -135,22 +136,27 @@ func handleWebsiteRecover(website *model.Website, recoverFile string, isRollback return err } if err := handleAppRecover(&app, fmt.Sprintf("%s/%s.app.tar.gz", tmpPath, website.Alias), true); err != nil { + global.LOG.Errorf("handle recover from app.tar.gz failed, err: %v", err) return err } if _, err := compose.Restart(fmt.Sprintf("%s/%s/%s/docker-compose.yml", constant.AppInstallDir, app.App.Key, app.Name)); err != nil { + global.LOG.Errorf("docker-compose restart failed, err: %v", err) return err } } siteDir := fmt.Sprintf("%s/openresty/%s/www/sites", constant.AppInstallDir, nginxInfo.Name) if err := handleUnTar(fmt.Sprintf("%s/%s.web.tar.gz", tmpPath, website.Alias), siteDir); err != nil { + global.LOG.Errorf("handle recover from web.tar.gz failed, err: %v", err) return err } stdout, err := cmd.Execf("docker exec -i %s nginx -s reload", nginxInfo.ContainerName) if err != nil { + global.LOG.Errorf("nginx -s reload failed, err: %s", stdout) return errors.New(string(stdout)) } if err := websiteRepo.SaveWithoutCtx(&oldWebsite); err != nil { + global.LOG.Errorf("handle save website data failed, err: %v", err) return err } isOk = true