def _stats(params): from contacts import contactsdb from p2p import contact_status from lib import diskspace result = {} result['suppliers'] = contactsdb.num_suppliers() result['max_suppliers'] = settings.getSuppliersNumberDesired() result['online_suppliers'] = contact_status.countOnlineAmong( contactsdb.suppliers()) result['customers'] = contactsdb.num_customers() result['bytes_donated'] = settings.getDonatedBytes() result['value_donated'] = diskspace.MakeStringFromBytes( settings.getDonatedBytes()) result['bytes_needed'] = settings.getNeededBytes() result['value_needed'] = diskspace.MakeStringFromBytes( settings.getNeededBytes()) result['bytes_used_total'] = backup_fs.sizebackups() result['value_used_total'] = diskspace.MakeStringFromBytes( backup_fs.sizebackups()) result['bytes_used_supplier'] = 0 if ( contactsdb.num_suppliers() == 0) else (int(backup_fs.sizebackups() / contactsdb.num_suppliers())) result['bytes_indexed'] = backup_fs.sizefiles() + backup_fs.sizefolders() result['files_count'] = backup_fs.numberfiles() result['folders_count'] = backup_fs.numberfolders() result['items_count'] = backup_fs.counter() result['timestamp'] = time.time() return { 'result': result, }
def report_consumed_storage(): result = {} result['suppliers_num'] = contactsdb.num_suppliers() result['needed'] = settings.getNeededBytes() # result['needed_str'] = diskspace.MakeStringFromBytes(result['needed']) result['used'] = int(backup_fs.sizebackups() / 2) # result['used_str'] = diskspace.MakeStringFromBytes(result['used']) result['available'] = result['needed'] - result['used'] # result['available_str'] = diskspace.MakeStringFromBytes(result['available']) result['needed_per_supplier'] = 0 result['used_per_supplier'] = 0 result['available_per_supplier'] = 0 if result['suppliers_num'] > 0: result['needed_per_supplier'] = int( math.ceil(2.0 * result['needed'] / result['suppliers_num'])) result['used_per_supplier'] = int( math.ceil(2.0 * result['used'] / result['suppliers_num'])) result['available_per_supplier'] = result[ 'needed_per_supplier'] - result['used_per_supplier'] # result['needed_per_supplier_str'] = diskspace.MakeStringFromBytes(result['needed_per_supplier']) # result['used_per_supplier_str'] = diskspace.MakeStringFromBytes(result['used_per_supplier']) # result['available_per_supplier_str'] = diskspace.MakeStringFromBytes(result['available_per_supplier']) try: result['used_percent'] = misc.value2percent(float(result['used']), float(result['needed'])) except: result['used_percent'] = '0%' return result
def _stats(params): from contacts import contactsdb from p2p import contact_status from lib import diskspace result = {} result['suppliers'] = contactsdb.num_suppliers() result['max_suppliers'] = settings.getSuppliersNumberDesired() result['online_suppliers'] = contact_status.countOnlineAmong(contactsdb.suppliers()) result['customers'] = contactsdb.num_customers() result['bytes_donated'] = settings.getDonatedBytes() result['value_donated'] = diskspace.MakeStringFromBytes(settings.getDonatedBytes()) result['bytes_needed'] = settings.getNeededBytes() result['value_needed'] = diskspace.MakeStringFromBytes(settings.getNeededBytes()) result['bytes_used_total'] = backup_fs.sizebackups() result['value_used_total'] = diskspace.MakeStringFromBytes(backup_fs.sizebackups()) result['bytes_used_supplier'] = 0 if (contactsdb.num_suppliers() == 0) else (int(backup_fs.sizebackups() / contactsdb.num_suppliers())) result['bytes_indexed'] = backup_fs.sizefiles() + backup_fs.sizefolders() result['files_count'] = backup_fs.numberfiles() result['folders_count'] = backup_fs.numberfolders() result['items_count'] = backup_fs.counter() result['timestamp'] = time.time() return {'result': result, }
def report_consumed_storage(): result = {} result['suppliers_num'] = contactsdb.num_suppliers() result['needed'] = settings.getNeededBytes() result['needed_str'] = diskspace.MakeStringFromBytes(result['needed']) result['used'] = int(backup_fs.sizebackups() / 2) result['used_str'] = diskspace.MakeStringFromBytes(result['used']) result['available'] = result['needed'] - result['used'] result['available_str'] = diskspace.MakeStringFromBytes(result['available']) result['needed_per_supplier'] = 0 result['used_per_supplier'] = 0 result['available_per_supplier'] = 0 if result['suppliers_num'] > 0: result['needed_per_supplier'] = int(math.ceil(2.0 * result['needed'] / result['suppliers_num'])) result['used_per_supplier'] = int(math.ceil(2.0 * result['used'] / result['suppliers_num'])) result['available_per_supplier'] = result['needed_per_supplier'] - result['used_per_supplier'] result['needed_per_supplier_str'] = diskspace.MakeStringFromBytes(result['needed_per_supplier']) result['used_per_supplier_str'] = diskspace.MakeStringFromBytes(result['used_per_supplier']) result['available_per_supplier_str'] = diskspace.MakeStringFromBytes(result['available_per_supplier']) try: result['used_percent'] = misc.percent2string(float(result['used']) / float(result['needed'])) except: result['used_percent'] = '0%' return result