Example #1
0
        protected void UpdateBackupStatus(string newMsg, Exception exception, BackupStatus.BackupMessageSeverity severity)
        {
            try
            {
                if (exception != null)
                {
                    log.WarnException(newMsg, exception);
                }
                else
                {
                    log.Info(newMsg);
                }

                var backupStatus = GetBackupStatus();
                if (backupStatus == null)
                {
                    return;
                }

                backupStatus.Messages.Add(new BackupStatus.BackupMessage
                {
                    Message   = newMsg,
                    Timestamp = SystemTime.UtcNow,
                    Severity  = severity,
                    Details   = exception?.ExceptionToString(null)
                });
                SetBackupStatus(backupStatus);
                state.MarkProgress(newMsg);
            }
            catch (Exception e)
            {
                log.WarnException("Failed to update backup status", e);
            }
        }
Example #2
0
        protected void UpdateBackupStatus(string newMsg, Exception exception, BackupStatus.BackupMessageSeverity severity)
        {
            try
            {
                if (exception != null)
                {
                    log.WarnException(newMsg, exception);
                }
                else
                {
                    log.Info(newMsg);
                }

                var jsonDocument = database.Documents.Get(BackupStatus.RavenBackupStatusDocumentKey, null);
                if (jsonDocument == null)
                {
                    return;
                }
                var backupStatus = jsonDocument.DataAsJson.JsonDeserialization <BackupStatus>();
                backupStatus.Messages.Add(new BackupStatus.BackupMessage
                {
                    Message   = newMsg,
                    Timestamp = SystemTime.UtcNow,
                    Severity  = severity,
                    Details   = exception?.ExceptionToString(null)
                });
                database.Documents.Put(BackupStatus.RavenBackupStatusDocumentKey, null, RavenJObject.FromObject(backupStatus),
                                       jsonDocument.Metadata,
                                       null);

                state.MarkProgress(newMsg);
            }
            catch (Exception e)
            {
                log.WarnException("Failed to update backup status", e);
            }
        }