def info(self): res = {} res['addr'] = self.__str__() res['hostname'] = infrastructure.get_hostname_by_addr(self.host.addr) res['status'] = self.status res['dc'] = self.host.dc res['last_stat_update'] = ( self.stat and datetime.datetime.fromtimestamp( self.stat.ts).strftime('%Y-%m-%d %H:%M:%S') or 'unknown') if self.stat: min_free_space = config['balancer_config'].get( 'min_free_space', 256) * 1024 * 1024 min_free_space_rel = config['balancer_config'].get( 'min_free_space_relative', 0.15) res['free_space'] = int(self.stat.free_space) node_eff_space = max( min(self.stat.total_space - min_free_space, self.stat.total_space * (1 - min_free_space_rel)), 0.0) res['free_effective_space'] = int( max( self.stat.free_space - (self.stat.total_space - node_eff_space), 0)) res['used_space'] = int(self.stat.used_space) res['total_files'] = self.stat.files + self.stat.files_removed res['fragmentation'] = self.stat.fragmentation res['path'] = port_to_path(int(res['addr'].split(':')[1])) return res
def info(self): res = {} res['addr'] = self.__str__() res['hostname'] = infrastructure.get_hostname_by_addr(self.host.addr) res['status'] = self.status res['dc'] = self.host.dc res['last_stat_update'] = (self.stat and datetime.datetime.fromtimestamp(self.stat.ts).strftime('%Y-%m-%d %H:%M:%S') or 'unknown') if self.stat: min_free_space = config['balancer_config'].get('min_free_space', 256) * 1024 * 1024 min_free_space_rel = config['balancer_config'].get('min_free_space_relative', 0.15) res['free_space'] = int(self.stat.free_space) node_eff_space = max(min(self.stat.total_space - min_free_space, self.stat.total_space * (1 - min_free_space_rel)), 0.0) res['free_effective_space'] = int(max(self.stat.free_space - (self.stat.total_space - node_eff_space), 0)) res['used_space'] = int(self.stat.used_space) res['total_files'] = self.stat.files + self.stat.files_removed res['fragmentation'] = self.stat.fragmentation res['path'] = port_to_path(int(res['addr'].split(':')[1])) return res
def parents(self): return infrastructure.get_host_tree( infrastructure.get_hostname_by_addr(self.addr))
def hostname(self): return infrastructure.get_hostname_by_addr(self.addr)
def parents(self): return infrastructure.get_host_tree( infrastructure.get_hostname_by_addr(self.addr))
def hostname(self): return infrastructure.get_hostname_by_addr(self.addr)