def pull_meta_key(service_url, network_object, measurements_events, start_time=int(time.time()) - 10000, end_time=int(time.time()), meta_key=None): """ Pulls only the metadata keys """ if service_url: service = create_service_client(service_url) else: if not isinstance(network_object, NetworkObject): raise CommandError("Please define a service.") services = find_service_watch(network_object, measurements_events) if not services: raise CommandError("Please define a service.") service = create_service_client(services[0]) for event in measurements_events: objects_keys = get_meta_keys(service, network_object, event) for obj in objects_keys: print objects_keys[obj]['key']
def test_find_service_watch(self): service_name = 'test service' service_type = 'test' service_description = 'this is a test service' service_accesspoint = "http://%s:9995/test" % self.EXAMPLE_IP[0] event = EventType.objects.create(value=events.NET_UTILIZATION) service = create_psservice(service_name, service_accesspoint, service_type, service_description) node = find_node_by_address(self.EXAMPLE_IP[0]) self.assertIsNone(find_service_watch(node, events.NET_UTILIZATION)) watch = psServiceWatchList.objects.create(service=service, event_type=event, network_object=node) services_find = find_service_watch(node, events.NET_UTILIZATION) self.assertEqual(len(services_find), 1) self.assertEqual(services_find[0], service)
def test_find_service_watch(self): service_name = 'test service' service_type = 'test' service_description = 'this is a test service' service_accesspoint = "http://%s:9995/test" % self.EXAMPLE_IP[0] event = EventType.objects.create(value=events.NET_UTILIZATION) service = create_psservice(service_name, service_accesspoint, service_type, service_description) node = find_node_by_address(self.EXAMPLE_IP[0]) self.assertIsNone(find_service_watch(node, events.NET_UTILIZATION)) watch = psServiceWatchList.objects.create(service=service, event_type=event, network_object=node) services_find = find_service_watch(node, events.NET_UTILIZATION) self.assertEqual(len(services_find), 1) self.assertEqual(services_find[0], service)
def pull_measurements_data(service_url, network_object, measurements_events, start_time=int(time.time()) - 10000, end_time=int(time.time()), meta_key=None): """ Generic method to pull perfSONAR measurements """ global SILENT if service_url: service = create_service_client(service_url) else: if not isinstance(network_object, NetworkObject): raise CommandError("Please define a service.") services = find_service_watch(network_object, measurements_events) if not services: raise CommandError("Please define a service.") service = create_service_client(services[0]) for event in measurements_events: if not meta_key: objects_keys = get_meta_keys(service, network_object, event) keys = [] for obj in objects_keys: keys.append(objects_keys[obj]['key']) else: keys = meta_key.strip().split() if not keys: raise CommandError("Network object is not found.") results = get_measurements_data(service, keys, event, start_time, end_time) for key, value in results.items(): if not SILENT: print "maKey", key, ":", event if not value: print None else: for v in value: print v meta = get_metadata_by_key(key) if not meta: continue if isinstance(value, list): save_measurements_data(meta['_id'], value)
def pull_measurements_data(service_url, network_object, measurements_events, start_time=int(time.time()) - 10000, end_time=int(time.time()), meta_key=None): """ Generic method to pull perfSONAR measurements """ global SILENT if service_url: service = create_service_client(service_url) else: if not isinstance(network_object, NetworkObject): raise CommandError("Please define a service.") services = find_service_watch(network_object, measurements_events) if not services: raise CommandError("Please define a service.") service = create_service_client(services[0]) for event in measurements_events: if not meta_key: objects_keys = get_meta_keys(service, network_object, event) keys = [] for obj in objects_keys: keys.append(objects_keys[obj]['key']) else: keys = meta_key.strip().split() if not keys: raise CommandError("Network object is not found.") results = get_measurements_data(service, keys, event, start_time, end_time) for key, value in results.items(): if not SILENT: print "maKey", key, ":", event if not value: print None else: for v in value: print v meta = get_metadata_by_key(key) if not meta: continue if isinstance(value, list): save_measurements_data(meta['_id'], value)
def pull_meta_key(service_url, network_object, measurements_events, start_time=int(time.time()) - 10000, end_time=int(time.time()), meta_key=None): """ Pulls only the metadata keys """ if service_url: service = create_service_client(service_url) else: if not isinstance(network_object, NetworkObject): raise CommandError("Please define a service.") services = find_service_watch(network_object, measurements_events) if not services: raise CommandError("Please define a service.") service = create_service_client(services[0]) for event in measurements_events: objects_keys = get_meta_keys(service, network_object, event) for obj in objects_keys: print objects_keys[obj]['key']