From f4dd38a0f3e3f10db3f121291ed91cad216a3952 Mon Sep 17 00:00:00 2001 From: wanyaoqi Date: Mon, 13 May 2019 11:08:41 +0800 Subject: [PATCH] fix guest delele backup log event --- pkg/cloudcommon/db/opslog.go | 2 ++ pkg/compute/tasks/guest_delete_on_host_task.go | 12 ++++++++++++ pkg/util/logclient/logclient.go | 1 + 3 files changed, 15 insertions(+) diff --git a/pkg/cloudcommon/db/opslog.go b/pkg/cloudcommon/db/opslog.go index 9bad6a4d9f..6a34de0f5d 100644 --- a/pkg/cloudcommon/db/opslog.go +++ b/pkg/cloudcommon/db/opslog.go @@ -49,6 +49,8 @@ const ( ACT_START_CREATE_BACKUP = "start_create_backup" ACT_CREATE_BACKUP = "create_backup" ACT_CREATE_BACKUP_FAILED = "create_backup_failed" + ACT_DELETE_BACKUP = "delete_backup" + ACT_DELETE_BACKUP_FAILED = "delete_backup_failed" ACT_UPDATE_STATUS = "updatestatus" ACT_STARTING = "starting" diff --git a/pkg/compute/tasks/guest_delete_on_host_task.go b/pkg/compute/tasks/guest_delete_on_host_task.go index 6ce10d810a..808632cd56 100644 --- a/pkg/compute/tasks/guest_delete_on_host_task.go +++ b/pkg/compute/tasks/guest_delete_on_host_task.go @@ -23,6 +23,7 @@ import ( "yunion.io/x/onecloud/pkg/cloudcommon/db" "yunion.io/x/onecloud/pkg/cloudcommon/db/taskman" "yunion.io/x/onecloud/pkg/compute/models" + "yunion.io/x/onecloud/pkg/util/logclient" ) func init() { @@ -90,6 +91,10 @@ func (self *GuestDeleteOnHostTask) OnStopGuest(ctx context.Context, guest *model } } +func (self *GuestDeleteOnHostTask) OnUnDeployGuestFailed(ctx context.Context, guest *models.SGuest, data jsonutils.JSONObject) { + self.OnFail(ctx, guest, data.String()) +} + func (self *GuestDeleteOnHostTask) OnUnDeployGuest(ctx context.Context, guest *models.SGuest, data jsonutils.JSONObject) { hostId, _ := self.Params.GetString("host_id") if guest.BackupHostId == hostId { @@ -101,6 +106,8 @@ func (self *GuestDeleteOnHostTask) OnUnDeployGuest(ctx context.Context, guest *m self.OnFail(ctx, guest, err.Error()) return } + logclient.AddActionLogWithContext(ctx, guest, logclient.ACT_DELETE_BACKUP, "GuestDeleteOnHost", self.UserCred, true) + db.OpsLog.LogEvent(guest, db.ACT_DELETE_BACKUP, "GuestDeleteOnHost", self.UserCred) } self.SetStage("OnSync", nil) guest.StartSyncTask(ctx, self.UserCred, false, self.GetTaskId()) @@ -111,6 +118,11 @@ func (self *GuestDeleteOnHostTask) OnSync(ctx context.Context, guest *models.SGu } func (self *GuestDeleteOnHostTask) OnFail(ctx context.Context, guest *models.SGuest, reason string) { + hostId, _ := self.Params.GetString("host_id") + if guest.BackupHostId == hostId { + logclient.AddActionLogWithContext(ctx, guest, logclient.ACT_DELETE_BACKUP, "GuestDeleteOnHost", self.UserCred, false) + db.OpsLog.LogEvent(guest, db.ACT_DELETE_BACKUP_FAILED, "GuestDeleteOnHost", self.UserCred) + } failedStatus, _ := self.Params.GetString("failed_status") if len(failedStatus) > 0 { guest.SetStatus(self.UserCred, failedStatus, reason) diff --git a/pkg/util/logclient/logclient.go b/pkg/util/logclient/logclient.go index 3361d56cc1..b7edc131bc 100644 --- a/pkg/util/logclient/logclient.go +++ b/pkg/util/logclient/logclient.go @@ -135,6 +135,7 @@ const ( ACT_LB_REMOVE_BACKEND = "移除后端服务器" ACT_LB_ADD_LISTENER_RULE = "添加负载均衡转发规则" ACT_LB_REMOVE_LISTENER_RULE = "移除负载均衡转发规则" + ACT_DELETE_BACKUP = "删除备份机" ACT_IMAGE_SAVE = "上传镜像"