def setup(): setup_args = myDict() setup_args.devices = entities.devices setup_args.user_tuple = entities.users.user1 setup_args.oids_dict = my_oids() setup_args.data_files = my_data_files() setup_args.file_data_dict = myDict() return setup_args
def __init__(self, entities_yml_file=config.cfg.entities_yml_file, *args, **kwargs): self.entities_yml_file = entities_yml_file self.entities = util.read_data_file(self.entities_yml_file) self.users = util.myDict(self.getUsers()) self.devices = util.myDict(self.getDevices())
def my_oids(): oids_dict = { 'running_last_changed': oids.get('ccmHistoryRunningLastChanged'), 'running_last_saved': oids.get('ccmHistoryRunningLastSaved'), 'startup_last_changed': oids.get('ccmHistoryStartupLastChanged'), 'uptime': oids.get('sysUptime'), } return myDict(oids_dict)
def my_get_snmp_data(device_tuple, user_tuple, oids_dict): snmp_data_dict = myDict() snmp_data_dict['epoch'] = str(time.time()) for oid_alias, oid_string in oids_dict.items(): snmp_data_dict[oid_alias] = get_snmp_data( tuple(device_tuple), tuple(user_tuple), oid_string ) return dict(snmp_data_dict)
def get_device_snmp_data(devices, user_tuple, oids_dict): # get snmp data from each device for each oid snmp_data = myDict() for dev_name, device_tuple in devices.iteritems(): snmp_data[dev_name] = my_get_snmp_data( device_tuple, user_tuple, oids_dict ) return snmp_data
def get_device_data(data_files): # Load saved device data if any, from all indicated data files. # There are multiple data files just to illustrate the use of # various data formats (JSON, YAML, PICKLE). # Make sure the data structure is the same in each data file. saved_data = myDict() saved_devices = myDict() for file_name in data_files: saved_data[file_name] = get_file_data(file_name) if is_equal_dicts(saved_data): if saved_data[file_name] is not None: saved_devices = saved_data[file_name] else: print ( "ERROR: Data in data files differs! Deleting data files.", data_files ) for file_name in data_files: if os.path.exists(file_name): os.remove(file_name) raise BaseException return saved_data, saved_devices