Example #1
0
    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
Example #2
0
    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
Example #3
0
 def parents(self):
     return infrastructure.get_host_tree(
         infrastructure.get_hostname_by_addr(self.addr))
Example #4
0
 def hostname(self):
     return infrastructure.get_hostname_by_addr(self.addr)
Example #5
0
 def parents(self):
     return infrastructure.get_host_tree(
         infrastructure.get_hostname_by_addr(self.addr))
Example #6
0
 def hostname(self):
     return infrastructure.get_hostname_by_addr(self.addr)