diff --git a/darc/archive.py b/darc/archive.py index d2f0602ff..a4ceb0791 100644 --- a/darc/archive.py +++ b/darc/archive.py @@ -125,6 +125,7 @@ class Archive(object): for id, size, csize in item['chunks']: count, _, _ = self.cache.chunks[id] stats.update(size, csize, count==1) + stats.nfiles += 1 self.cache.chunks[id] = count - 1, size, csize except KeyError: pass @@ -333,6 +334,7 @@ class Archive(object): cache.memorize_file(path_hash, st, ids) item = {'path': safe_path, 'chunks': chunks} item.update(self.stat_attrs(st, path)) + self.stats.nfiles += 1 self.add_item(item) @staticmethod diff --git a/darc/archiver.py b/darc/archiver.py index c92537e1a..96cee3f9e 100644 --- a/darc/archiver.py +++ b/darc/archiver.py @@ -82,6 +82,7 @@ class Archiver(object): diff = t - t0 print '-' * 40 print 'Archive name: %s' % args.archive.archive + print 'Archive fingerprint: %s' % archive.hash.encode('hex') print 'Start time: %s' % t0.strftime('%c') print 'End time: %s' % t.strftime('%c') print 'Duration: %.2f (%s)' % (diff.total_seconds(), format_timedelta(diff)) @@ -219,10 +220,11 @@ class Archiver(object): cache = Cache(store, key) archive = Archive(store, key, args.archive.archive, cache=cache) stats = archive.calc_stats(cache) - print 'Name:', archive.metadata['name'] + print 'Name:', archive.name + print 'Fingerprint: %s' % archive.hash.encode('hex') print 'Hostname:', archive.metadata['hostname'] print 'Username:', archive.metadata['username'] - print 'Time:', archive.metadata['time'] + print 'Time:', to_localtime(archive.ts).strftime('%c') print 'Command line:', ' '.join(archive.metadata['cmdline']) stats.print_() return self.exit_code diff --git a/darc/helpers.py b/darc/helpers.py index a4b51514f..e8eca8168 100644 --- a/darc/helpers.py +++ b/darc/helpers.py @@ -16,7 +16,7 @@ import urllib class Statistics(object): def __init__(self): - self.osize = self.csize = self.usize = 0 + self.osize = self.csize = self.usize = self.nfiles = 0 def update(self, size, csize, unique): self.osize += size @@ -25,6 +25,7 @@ class Statistics(object): self.usize += csize def print_(self): + print 'Number of files: %d' % self.nfiles print 'Original size: %d (%s)' % (self.osize, format_file_size(self.osize)) print 'Compressed size: %s (%s)'% (self.csize, format_file_size(self.csize)) print 'Unique data: %d (%s)' % (self.usize, format_file_size(self.usize))