def update_rif_counters(self): rif_sai_ids = list(self.rif_port_map) + list(self.vlan_name_map) self.rif_counters = \ {sai_id: Namespace.dbs_get_all(self.db_conn, mibs.COUNTERS_DB, mibs.counter_table(mibs.split_sai_id_key(sai_id)[1]), blocking=False) for sai_id in rif_sai_ids}
def update_if_counters(self): for sai_id_key in self.if_id_map: namespace, sai_id = mibs.split_sai_id_key(sai_id_key) if_idx = mibs.get_index_from_str(self.if_id_map[sai_id_key]) counters_db_data = self.namespace_db_map[namespace].get_all( mibs.COUNTERS_DB, mibs.counter_table(sai_id), blocking=True) self.if_counters[if_idx] = { counter: int(value) for counter, value in counters_db_data.items() }
def update_data(self): """ Update redis (caches config) Pulls the table references for each interface. """ for sai_id_key in self.if_id_map: namespace, sai_id = mibs.split_sai_id_key(sai_id_key) if_idx = mibs.get_index_from_str(self.if_id_map[sai_id_key]) self.if_counters[if_idx] = self.namespace_db_map[namespace].get_all(mibs.COUNTERS_DB, \ mibs.counter_table(sai_id), blocking=True)
def update_rif_counters(self): rif_sai_ids = list(self.rif_port_map) + list(self.vlan_name_map) for sai_id in rif_sai_ids: counters_db_data = Namespace.dbs_get_all( self.db_conn, mibs.COUNTERS_DB, mibs.counter_table(mibs.split_sai_id_key(sai_id)[1]), blocking=False) self.rif_counters[sai_id] = { counter: int(value) for counter, value in counters_db_data.items() }
def update_data(self): """ Update redis (caches config) Pulls the table references for each interface. """ for sai_id_key in self.if_id_map: namespace, sai_id = mibs.split_sai_id_key(sai_id_key) if_idx = mibs.get_index_from_str(self.if_id_map[sai_id_key]) self.if_counters[if_idx] = self.namespace_db_map[namespace].get_all(mibs.COUNTERS_DB, \ mibs.counter_table(sai_id), blocking=True) self.lag_name_if_name_map, \ self.if_name_lag_name_map, \ self.oid_lag_name_map, _ = Namespace.get_sync_d_from_all_namespace(mibs.init_sync_d_lag_tables, self.db_conn) self.if_range = sorted(list(self.oid_name_map.keys()) + list(self.oid_lag_name_map.keys())) self.if_range = [(i,) for i in self.if_range]
def reinit_data(self): """ Subclass update interface information """ self.if_name_map, \ self.if_alias_map, \ self.if_id_map, \ self.oid_name_map = Namespace.get_sync_d_from_all_namespace(mibs.init_sync_d_interface_tables, self.db_conn) for sai_id_key in self.if_id_map: namespace, sai_id = mibs.split_sai_id_key(sai_id_key) if_idx = mibs.get_index_from_str(self.if_id_map[sai_id_key]) self.port_index_namespace[if_idx] = namespace self.port_queues_map, self.queue_stat_map, self.port_queue_list_map = \ Namespace.get_sync_d_from_all_namespace(mibs.init_sync_d_queue_tables, self.db_conn) for db_conn in Namespace.get_non_host_dbs(self.db_conn): self.queue_type_map[db_conn.namespace] = db_conn.get_all(mibs.COUNTERS_DB, "COUNTERS_QUEUE_TYPE_MAP", blocking=False)
def update_if_counters(self): for sai_id_key in self.if_id_map: namespace, sai_id = mibs.split_sai_id_key(sai_id_key) if_idx = mibs.get_index_from_str(self.if_id_map[sai_id_key]) self.if_counters[if_idx] = self.namespace_db_map[namespace].get_all(mibs.COUNTERS_DB, \ mibs.counter_table(sai_id), blocking=True)