diff --git a/src/internal/events/events.go b/src/internal/events/events.go index da4685449..20292dbf4 100644 --- a/src/internal/events/events.go +++ b/src/internal/events/events.go @@ -32,7 +32,6 @@ const ( RepoConnect = "Repo Connect" BackupEnd = "Backup End" RestoreEnd = "Restore End" - CorsoError = "Corso Error" ExportEnd = "Export End" MaintenanceEnd = "Maintenance End" @@ -53,6 +52,7 @@ const ( StartTime = "start_time" Status = "status" Command = "command" + ErrorMessage = "error" // default values for keys RepoIDNotFound = "not_found" diff --git a/src/internal/operations/backup.go b/src/internal/operations/backup.go index 78426da39..a377d9b57 100644 --- a/src/internal/operations/backup.go +++ b/src/internal/operations/backup.go @@ -248,34 +248,25 @@ func (op *BackupOperation) Run(ctx context.Context) (err error) { "disable_assist_backup", op.disableAssistBackup) defer func() { + data := map[string]any{ + events.BackupID: op.Results.BackupID, + events.DataStored: op.Results.BytesUploaded, + events.Duration: op.Results.CompletedAt.Sub(op.Results.StartedAt), + events.EndTime: dttm.Format(op.Results.CompletedAt), + events.Resources: op.Results.ResourceOwners, + events.Service: op.Selectors.PathService().String(), + events.StartTime: dttm.Format(op.Results.StartedAt), + events.Status: op.Status.String(), + } + if op.Errors.Failure() != nil { - op.bus.Event( - ctx, - events.CorsoError, - map[string]any{ - events.Resources: op.ResourceOwner.ID(), - events.ResourcesName: op.ResourceOwner.Name(), - events.Service: op.Selectors.PathService().String(), - events.StartTime: dttm.Format(op.Results.StartedAt), - events.Status: op.Status.String(), - events.BackupID: op.Results.BackupID, - events.Command: "Backup", - }) + data[events.ErrorMessage] = op.Errors.Errors().Failure.Msg } op.bus.Event( ctx, events.BackupEnd, - map[string]any{ - events.BackupID: op.Results.BackupID, - events.DataStored: op.Results.BytesUploaded, - events.Duration: op.Results.CompletedAt.Sub(op.Results.StartedAt), - events.EndTime: dttm.Format(op.Results.CompletedAt), - events.Resources: op.Results.ResourceOwners, - events.Service: op.Selectors.PathService().String(), - events.StartTime: dttm.Format(op.Results.StartedAt), - events.Status: op.Status.String(), - }) + data) }() // ----- diff --git a/src/internal/operations/export.go b/src/internal/operations/export.go index ec148ca36..1798a6dd4 100644 --- a/src/internal/operations/export.go +++ b/src/internal/operations/export.go @@ -144,35 +144,28 @@ func (op *ExportOperation) Run(ctx context.Context) ( "service", op.Selectors.Service) defer func() { + data := map[string]any{ + events.BackupID: op.BackupID, + events.DataRetrieved: op.Results.BytesRead, + events.Duration: op.Results.CompletedAt.Sub(op.Results.StartedAt), + events.EndTime: dttm.Format(op.Results.CompletedAt), + events.ItemsRead: op.Results.ItemsRead, + events.ItemsWritten: op.Results.ItemsWritten, + events.Resources: op.Results.ResourceOwners, + events.ExportID: opStats.exportID, + events.Service: op.Selectors.Service.String(), + events.StartTime: dttm.Format(op.Results.StartedAt), + events.Status: op.Status.String(), + } + if op.Errors.Failure() != nil { - op.bus.Event( - ctx, - events.CorsoError, - map[string]any{ - events.Service: op.Selectors.PathService().String(), - events.StartTime: dttm.Format(op.Results.StartedAt), - events.Status: op.Status.String(), - events.BackupID: op.BackupID, - events.Command: "Export", - }) + data[events.ErrorMessage] = op.Errors.Errors() } op.bus.Event( ctx, events.ExportEnd, - map[string]any{ - events.BackupID: op.BackupID, - events.DataRetrieved: op.Results.BytesRead, - events.Duration: op.Results.CompletedAt.Sub(op.Results.StartedAt), - events.EndTime: dttm.Format(op.Results.CompletedAt), - events.ItemsRead: op.Results.ItemsRead, - events.ItemsWritten: op.Results.ItemsWritten, - events.Resources: op.Results.ResourceOwners, - events.ExportID: opStats.exportID, - events.Service: op.Selectors.Service.String(), - events.StartTime: dttm.Format(op.Results.StartedAt), - events.Status: op.Status.String(), - }) + data) }() // ----- diff --git a/src/internal/operations/maintenance.go b/src/internal/operations/maintenance.go index c34cc47f7..6713f2b18 100644 --- a/src/internal/operations/maintenance.go +++ b/src/internal/operations/maintenance.go @@ -58,28 +58,22 @@ func (op *MaintenanceOperation) Run(ctx context.Context) (err error) { op.Results.StartedAt = time.Now() defer func() { + data := map[string]any{ + events.StartTime: op.Results.StartedAt, + events.Duration: op.Results.CompletedAt.Sub(op.Results.StartedAt), + events.EndTime: dttm.Format(op.Results.CompletedAt), + events.Status: op.Status.String(), + events.Resources: op.mOpts.Type.String(), + } + if op.Errors.Failure() != nil { - op.bus.Event( - ctx, - events.CorsoError, - map[string]any{ - events.Resources: op.mOpts.Type.String(), - events.StartTime: dttm.Format(op.Results.StartedAt), - events.Status: op.Status.String(), - events.Command: "Maintenance", - }) + data[events.ErrorMessage] = op.Errors.Errors() } op.bus.Event( ctx, events.MaintenanceEnd, - map[string]any{ - events.StartTime: op.Results.StartedAt, - events.Duration: op.Results.CompletedAt.Sub(op.Results.StartedAt), - events.EndTime: dttm.Format(op.Results.CompletedAt), - events.Status: op.Status.String(), - events.Resources: op.mOpts.Type.String(), - }) + data) }() return op.do(ctx) diff --git a/src/internal/operations/restore.go b/src/internal/operations/restore.go index 51c0f8cb3..e6249b789 100644 --- a/src/internal/operations/restore.go +++ b/src/internal/operations/restore.go @@ -146,35 +146,28 @@ func (op *RestoreOperation) Run(ctx context.Context) (restoreDetails *details.De "destination_container", clues.Hide(op.RestoreCfg.Location)) defer func() { + data := map[string]any{ + events.BackupID: op.BackupID, + events.DataRetrieved: op.Results.BytesRead, + events.Duration: op.Results.CompletedAt.Sub(op.Results.StartedAt), + events.EndTime: dttm.Format(op.Results.CompletedAt), + events.ItemsRead: op.Results.ItemsRead, + events.ItemsWritten: op.Results.ItemsWritten, + events.Resources: op.Results.ResourceOwners, + events.RestoreID: opStats.restoreID, + events.Service: op.Selectors.Service.String(), + events.StartTime: dttm.Format(op.Results.StartedAt), + events.Status: op.Status.String(), + } + if op.Errors.Failure() != nil { - op.bus.Event( - ctx, - events.CorsoError, - map[string]any{ - events.Service: op.Selectors.PathService().String(), - events.StartTime: dttm.Format(op.Results.StartedAt), - events.Status: op.Status.String(), - events.BackupID: op.BackupID, - events.Command: "Restore", - }) + data[events.ErrorMessage] = op.Errors.Errors() } op.bus.Event( ctx, events.RestoreEnd, - map[string]any{ - events.BackupID: op.BackupID, - events.DataRetrieved: op.Results.BytesRead, - events.Duration: op.Results.CompletedAt.Sub(op.Results.StartedAt), - events.EndTime: dttm.Format(op.Results.CompletedAt), - events.ItemsRead: op.Results.ItemsRead, - events.ItemsWritten: op.Results.ItemsWritten, - events.Resources: op.Results.ResourceOwners, - events.RestoreID: opStats.restoreID, - events.Service: op.Selectors.Service.String(), - events.StartTime: dttm.Format(op.Results.StartedAt), - events.Status: op.Status.String(), - }) + data) }() // ----- diff --git a/src/internal/operations/restore_test.go b/src/internal/operations/restore_test.go index c9dc24899..94efcdac7 100644 --- a/src/internal/operations/restore_test.go +++ b/src/internal/operations/restore_test.go @@ -366,6 +366,5 @@ func (suite *RestoreOpIntegrationSuite) TestRestore_Run_errorNoBackup() { require.Nil(t, ds, "restoreOp.Run() should not produce details") assert.Zero(t, ro.Results.ResourceOwners, "resource owners") assert.Zero(t, ro.Results.BytesRead, "bytes read") - assert.Equal(t, 1, mb.TimesCalled[events.CorsoError], "corso-error events") assert.Equal(t, 1, mb.TimesCalled[events.RestoreEnd], "restore-end events") } diff --git a/src/internal/operations/test/exchange_test.go b/src/internal/operations/test/exchange_test.go index 25417917b..1947eb4bf 100644 --- a/src/internal/operations/test/exchange_test.go +++ b/src/internal/operations/test/exchange_test.go @@ -226,7 +226,6 @@ func (suite *ExchangeBackupIntgSuite) TestBackup_Run_exchange() { assert.Equal(t, bo.Results.ResourceOwners, incBO.Results.ResourceOwners, "incremental backup resource owner") assert.NoError(t, incBO.Errors.Failure(), "incremental non-recoverable error", clues.ToCore(bo.Errors.Failure())) assert.Empty(t, incBO.Errors.Recovered(), "count incremental recoverable/iteration errors") - assert.Equal(t, 0, incMB.TimesCalled[events.CorsoError], "corso error events") assert.Equal(t, 1, incMB.TimesCalled[events.BackupEnd], "incremental backup-end events") }) }