Better error handling and logging for restorations

This commit is contained in:
Dane Everitt
2021-01-30 18:43:35 -08:00
parent 13541524c3
commit adc0732af3
7 changed files with 43 additions and 28 deletions

View File

@@ -138,12 +138,14 @@ func postServerRestoreBackup(c *gin.Context) {
return
}
go func(uuid string, logger *log.Entry) {
logger.Info("restoring server from remote S3 backup...")
go func(s *server.Server, uuid string, logger *log.Entry) {
logger.Info("starting restoration process for server backup using S3 driver")
if err := s.RestoreBackup(backup.NewS3(uuid, ""), res.Body); err != nil {
logger.WithField("error", errors.WithStack(err)).Error("failed to restore remote S3 backup to server")
}
}(c.Param("backup"), logger)
s.Events().Publish(server.BackupRestoreCompletedEvent, "")
logger.Info("completed server restoration from S3 backup")
}(s, c.Param("backup"), logger)
c.Status(http.StatusAccepted)
}

View File

@@ -45,6 +45,7 @@ var e = []string{
server.InstallCompletedEvent,
server.DaemonMessageEvent,
server.BackupCompletedEvent,
server.BackupRestoreCompletedEvent,
server.TransferLogsEvent,
server.TransferStatusEvent,
}