summaryrefslogtreecommitdiff
path: root/rdiff-backup/rdiff_backup/highlevel.py
diff options
context:
space:
mode:
Diffstat (limited to 'rdiff-backup/rdiff_backup/highlevel.py')
-rw-r--r--rdiff-backup/rdiff_backup/highlevel.py23
1 files changed, 6 insertions, 17 deletions
diff --git a/rdiff-backup/rdiff_backup/highlevel.py b/rdiff-backup/rdiff_backup/highlevel.py
index a9e5ce2..bd34746 100644
--- a/rdiff-backup/rdiff_backup/highlevel.py
+++ b/rdiff-backup/rdiff_backup/highlevel.py
@@ -240,6 +240,7 @@ class HLDestinationStruct:
"""Apply diffs and finalize, with checkpointing and statistics"""
collated = RORPIter.CollateIterators(diffs, cls.initial_dsiter2)
finalizer, ITR = cls.get_finalizer(), cls.get_MirrorITR(inc_rpath)
+ Stats.open_dir_stats_file()
dsrp = None
def error_checked():
@@ -262,13 +263,15 @@ class HLDestinationStruct:
cls.check_skip_error(finalizer.Finish, dsrp)
except: cls.handle_last_error(dsrp, finalizer, ITR)
if Globals.preserve_hardlinks: Hardlink.final_writedata()
- cls.write_statistics(ITR)
+ Stats.close_dir_stats_file()
+ Stats.write_session_statistics(ITR)
SaveState.checkpoint_remove()
def patch_increment_and_finalize(cls, dest_rpath, diffs, inc_rpath):
"""Apply diffs, write increment if necessary, and finalize"""
collated = RORPIter.CollateIterators(diffs, cls.initial_dsiter2)
finalizer, ITR = cls.get_finalizer(), cls.get_ITR(inc_rpath)
+ Stats.open_dir_stats_file()
dsrp = None
def error_checked():
@@ -292,7 +295,8 @@ class HLDestinationStruct:
cls.check_skip_error(finalizer.Finish, dsrp)
except: cls.handle_last_error(dsrp, finalizer, ITR)
if Globals.preserve_hardlinks: Hardlink.final_writedata()
- cls.write_statistics(ITR)
+ Stats.close_dir_stats_file()
+ Stats.write_session_statistics(ITR)
SaveState.checkpoint_remove()
def check_skip_error(cls, thunk, dsrp):
@@ -323,19 +327,4 @@ class HLDestinationStruct:
SaveState.touch_last_file_definitive()
raise
- def write_statistics(cls, ITR):
- """Write session statistics to file, log"""
- stat_inc = Inc.get_inc(Globals.rbdir.append("session_statistics"),
- Time.curtime, "data")
- ITR.StartTime = Time.curtime
- ITR.EndTime = time.time()
- if Globals.preserve_hardlinks and Hardlink.final_inc:
- # include hardlink data in size of increments
- ITR.IncrementFileSize += Hardlink.final_inc.getsize()
- ITR.write_stats_to_rp(stat_inc)
- if Globals.print_statistics:
- message = ITR.get_stats_logstring("Session statistics")
- Log.log_to_file(message)
- Globals.client_conn.sys.stdout.write(message)
-
MakeClass(HLDestinationStruct)