Skip to content
Snippets Groups Projects
Commit 2d410ea8 authored by Francisco-Javier Moreno-Muro's avatar Francisco-Javier Moreno-Muro
Browse files

Improve QueryKpiData RPC

parent 86951ab9
No related branches found
No related tags found
2 merge requests!142Release TeraFlowSDN 2.1,!66Changes in scenario2 workflow3 tests
...@@ -182,19 +182,19 @@ def subs_scheduler(): ...@@ -182,19 +182,19 @@ def subs_scheduler():
return _scheduler return _scheduler
def ingestion_data(): def ingestion_data(kpi_id_int):
metrics_db = MetricsDB("localhost", "9009", "9000", "monitoring") metrics_db = MetricsDB("localhost", "9009", "9000", "monitoring")
for i in range(200): for i in range(50):
kpiSampleType = KpiSampleType.Name(KpiSampleType.KPISAMPLETYPE_PACKETS_RECEIVED).upper().replace('KPISAMPLETYPE_', '') kpiSampleType = KpiSampleType.Name(KpiSampleType.KPISAMPLETYPE_PACKETS_RECEIVED).upper().replace('KPISAMPLETYPE_', '')
kpiId = "3" kpiId = kpi_id_int
deviceId = 'DEV3' deviceId = 'DEV'+ str(kpi_id_int)
endpointId = 'END3' endpointId = 'END' + str(kpi_id_int)
serviceId = 'SERV3' serviceId = 'SERV' + str(kpi_id_int)
sliceId = 'SLC3' sliceId = 'SLC' + str(kpi_id_int)
connectionId = 'CON3' connectionId = 'CON' + str(kpi_id_int)
time_stamp = timestamp_utcnow_to_float() time_stamp = timestamp_utcnow_to_float()
kpi_value = 500*random() kpi_value = 500*random()
metrics_db.write_KPI(time_stamp, kpiId, kpiSampleType, deviceId, endpointId, serviceId, sliceId, connectionId, metrics_db.write_KPI(time_stamp, kpiId, kpiSampleType, deviceId, endpointId, serviceId, sliceId, connectionId,
kpi_value) kpi_value)
...@@ -208,18 +208,17 @@ def ingestion_data(): ...@@ -208,18 +208,17 @@ def ingestion_data():
def test_set_kpi(monitoring_client): # pylint: disable=redefined-outer-name def test_set_kpi(monitoring_client): # pylint: disable=redefined-outer-name
# make call to server # make call to server
LOGGER.warning('test_create_kpi requesting') LOGGER.warning('test_create_kpi requesting')
response = monitoring_client.SetKpi(create_kpi_request()) for i in range(3):
LOGGER.debug(str(response)) response = monitoring_client.SetKpi(create_kpi_request(str(i+1)))
response = monitoring_client.SetKpi(create_kpi_request_b()) LOGGER.debug(str(response))
LOGGER.debug(str(response)) assert isinstance(response, KpiId)
assert isinstance(response, KpiId)
# Test case that makes use of client fixture to test server's DeleteKpi method # Test case that makes use of client fixture to test server's DeleteKpi method
def test_delete_kpi(monitoring_client): # pylint: disable=redefined-outer-name def test_delete_kpi(monitoring_client): # pylint: disable=redefined-outer-name
# make call to server # make call to server
LOGGER.warning('delete_kpi requesting') LOGGER.warning('delete_kpi requesting')
response = monitoring_client.SetKpi(create_kpi_request_b()) response = monitoring_client.SetKpi(create_kpi_request('4'))
response = monitoring_client.DeleteKpi(response) response = monitoring_client.DeleteKpi(response)
LOGGER.debug(str(response)) LOGGER.debug(str(response))
assert isinstance(response, Empty) assert isinstance(response, Empty)
...@@ -227,7 +226,7 @@ def test_delete_kpi(monitoring_client): # pylint: disable=redefined-outer-name ...@@ -227,7 +226,7 @@ def test_delete_kpi(monitoring_client): # pylint: disable=redefined-outer-name
# Test case that makes use of client fixture to test server's GetKpiDescriptor method # Test case that makes use of client fixture to test server's GetKpiDescriptor method
def test_get_kpidescritor(monitoring_client): # pylint: disable=redefined-outer-name def test_get_kpidescritor(monitoring_client): # pylint: disable=redefined-outer-name
LOGGER.warning('test_getkpidescritor_kpi begin') LOGGER.warning('test_getkpidescritor_kpi begin')
response = monitoring_client.SetKpi(create_kpi_request_c()) response = monitoring_client.SetKpi(create_kpi_request('1'))
response = monitoring_client.GetKpiDescriptor(response) response = monitoring_client.GetKpiDescriptor(response)
LOGGER.debug(str(response)) LOGGER.debug(str(response))
assert isinstance(response, KpiDescriptor) assert isinstance(response, KpiDescriptor)
...@@ -243,7 +242,8 @@ def test_get_kpi_descriptor_list(monitoring_client): # pylint: disable=redefined ...@@ -243,7 +242,8 @@ def test_get_kpi_descriptor_list(monitoring_client): # pylint: disable=redefined
def test_include_kpi(monitoring_client): # pylint: disable=redefined-outer-name def test_include_kpi(monitoring_client): # pylint: disable=redefined-outer-name
# make call to server # make call to server
LOGGER.warning('test_include_kpi requesting') LOGGER.warning('test_include_kpi requesting')
kpi_id = monitoring_client.SetKpi(create_kpi_request_c()) kpi_id = monitoring_client.SetKpi(create_kpi_request('1'))
LOGGER.debug(str(kpi_id))
response = monitoring_client.IncludeKpi(include_kpi_request(kpi_id)) response = monitoring_client.IncludeKpi(include_kpi_request(kpi_id))
LOGGER.debug(str(response)) LOGGER.debug(str(response))
assert isinstance(response, Empty) assert isinstance(response, Empty)
...@@ -277,7 +277,7 @@ def test_monitor_kpi( ...@@ -277,7 +277,7 @@ def test_monitor_kpi(
response = device_client.AddDevice(Device(**device_with_connect_rules)) response = device_client.AddDevice(Device(**device_with_connect_rules))
assert response.device_uuid.uuid == DEVICE_DEV1_UUID assert response.device_uuid.uuid == DEVICE_DEV1_UUID
response = monitoring_client.SetKpi(create_kpi_request()) response = monitoring_client.SetKpi(create_kpi_request('1'))
_monitor_kpi_request = monitor_kpi_request(response.kpi_id.uuid, 120, 5) # pylint: disable=maybe-no-member _monitor_kpi_request = monitor_kpi_request(response.kpi_id.uuid, 120, 5) # pylint: disable=maybe-no-member
response = monitoring_client.MonitorKpi(_monitor_kpi_request) response = monitoring_client.MonitorKpi(_monitor_kpi_request)
LOGGER.debug(str(response)) LOGGER.debug(str(response))
...@@ -287,19 +287,23 @@ def test_monitor_kpi( ...@@ -287,19 +287,23 @@ def test_monitor_kpi(
def test_query_kpi_data(monitoring_client,subs_scheduler): # pylint: disable=redefined-outer-name def test_query_kpi_data(monitoring_client,subs_scheduler): # pylint: disable=redefined-outer-name
kpi_id_list = [] kpi_id_list = []
kpi_id = monitoring_client.SetKpi(create_kpi_request_c()) for i in range(2):
subs_scheduler.add_job(ingestion_data) kpi_id = monitoring_client.SetKpi(create_kpi_request(str(i+1)))
kpi_id_list.append(kpi_id) subs_scheduler.add_job(ingestion_data, args=[kpi_id.kpi_id.uuid])
kpi_id_list.append(kpi_id)
LOGGER.warning('test_query_kpi_data') LOGGER.warning('test_query_kpi_data')
sleep(5)
response = monitoring_client.QueryKpiData(kpi_query(kpi_id_list)) response = monitoring_client.QueryKpiData(kpi_query(kpi_id_list))
LOGGER.debug(str(response)) LOGGER.debug(str(response))
assert isinstance(response, RawKpiTable) assert isinstance(response, RawKpiTable)
if (subs_scheduler.state != STATE_STOPPED):
subs_scheduler.shutdown()
# Test case that makes use of client fixture to test server's SetKpiSubscription method # Test case that makes use of client fixture to test server's SetKpiSubscription method
def test_set_kpi_subscription(monitoring_client,subs_scheduler): # pylint: disable=redefined-outer-name def test_set_kpi_subscription(monitoring_client,subs_scheduler): # pylint: disable=redefined-outer-name
LOGGER.warning('test_set_kpi_subscription') LOGGER.warning('test_set_kpi_subscription')
kpi_id = monitoring_client.SetKpi(create_kpi_request_c()) kpi_id = monitoring_client.SetKpi(create_kpi_request('1'))
subs_scheduler.add_job(ingestion_data) subs_scheduler.add_job(ingestion_data, args=[kpi_id.kpi_id.uuid])
response = monitoring_client.SetKpiSubscription(subs_descriptor(kpi_id)) response = monitoring_client.SetKpiSubscription(subs_descriptor(kpi_id))
assert isinstance(response, _MultiThreadedRendezvous) assert isinstance(response, _MultiThreadedRendezvous)
for item in response: for item in response:
...@@ -363,9 +367,9 @@ def test_get_alarm_descriptor(monitoring_client): ...@@ -363,9 +367,9 @@ def test_get_alarm_descriptor(monitoring_client):
# Test case that makes use of client fixture to test server's GetAlarmResponseStream method # Test case that makes use of client fixture to test server's GetAlarmResponseStream method
def test_get_alarm_response_stream(monitoring_client,subs_scheduler): def test_get_alarm_response_stream(monitoring_client,subs_scheduler):
LOGGER.warning('test_get_alarm_descriptor') LOGGER.warning('test_get_alarm_descriptor')
_kpi_id = monitoring_client.SetKpi(create_kpi_request_c()) _kpi_id = monitoring_client.SetKpi(create_kpi_request('3'))
_alarm_id = monitoring_client.SetKpiAlarm(alarm_descriptor(_kpi_id)) _alarm_id = monitoring_client.SetKpiAlarm(alarm_descriptor(_kpi_id))
subs_scheduler.add_job(ingestion_data) subs_scheduler.add_job(ingestion_data,args=[_kpi_id.kpi_id.uuid])
_response = monitoring_client.GetAlarmResponseStream(alarm_subscription(_alarm_id)) _response = monitoring_client.GetAlarmResponseStream(alarm_subscription(_alarm_id))
assert isinstance(_response, _MultiThreadedRendezvous) assert isinstance(_response, _MultiThreadedRendezvous)
for item in _response: for item in _response:
...@@ -403,7 +407,7 @@ def test_get_stream_kpi(monitoring_client): # pylint: disable=redefined-outer-na ...@@ -403,7 +407,7 @@ def test_get_stream_kpi(monitoring_client): # pylint: disable=redefined-outer-na
def test_managementdb_tools_insert_kpi(management_db): # pylint: disable=redefined-outer-name def test_managementdb_tools_insert_kpi(management_db): # pylint: disable=redefined-outer-name
LOGGER.warning('test_managementdb_tools_insert_kpi begin') LOGGER.warning('test_managementdb_tools_insert_kpi begin')
_create_kpi_request = create_kpi_request() _create_kpi_request = create_kpi_request('5')
kpi_description = _create_kpi_request.kpi_description # pylint: disable=maybe-no-member kpi_description = _create_kpi_request.kpi_description # pylint: disable=maybe-no-member
kpi_sample_type = _create_kpi_request.kpi_sample_type # pylint: disable=maybe-no-member kpi_sample_type = _create_kpi_request.kpi_sample_type # pylint: disable=maybe-no-member
kpi_device_id = _create_kpi_request.device_id.device_uuid.uuid # pylint: disable=maybe-no-member kpi_device_id = _create_kpi_request.device_id.device_uuid.uuid # pylint: disable=maybe-no-member
...@@ -417,7 +421,7 @@ def test_managementdb_tools_insert_kpi(management_db): # pylint: disable=redefin ...@@ -417,7 +421,7 @@ def test_managementdb_tools_insert_kpi(management_db): # pylint: disable=redefin
def test_managementdb_tools_get_kpi(management_db): # pylint: disable=redefined-outer-name def test_managementdb_tools_get_kpi(management_db): # pylint: disable=redefined-outer-name
LOGGER.warning('test_managementdb_tools_get_kpi begin') LOGGER.warning('test_managementdb_tools_get_kpi begin')
_create_kpi_request = create_kpi_request() _create_kpi_request = create_kpi_request('5')
kpi_description = _create_kpi_request.kpi_description # pylint: disable=maybe-no-member kpi_description = _create_kpi_request.kpi_description # pylint: disable=maybe-no-member
kpi_sample_type = _create_kpi_request.kpi_sample_type # pylint: disable=maybe-no-member kpi_sample_type = _create_kpi_request.kpi_sample_type # pylint: disable=maybe-no-member
kpi_device_id = _create_kpi_request.device_id.device_uuid.uuid # pylint: disable=maybe-no-member kpi_device_id = _create_kpi_request.device_id.device_uuid.uuid # pylint: disable=maybe-no-member
...@@ -438,7 +442,7 @@ def test_managementdb_tools_get_kpis(management_db): # pylint: disable=redefined ...@@ -438,7 +442,7 @@ def test_managementdb_tools_get_kpis(management_db): # pylint: disable=redefined
def test_managementdb_tools_delete_kpi(management_db): # pylint: disable=redefined-outer-name def test_managementdb_tools_delete_kpi(management_db): # pylint: disable=redefined-outer-name
LOGGER.warning('test_managementdb_tools_get_kpi begin') LOGGER.warning('test_managementdb_tools_get_kpi begin')
_create_kpi_request = create_kpi_request() _create_kpi_request = create_kpi_request('5')
kpi_description = _create_kpi_request.kpi_description # pylint: disable=maybe-no-member kpi_description = _create_kpi_request.kpi_description # pylint: disable=maybe-no-member
kpi_sample_type = _create_kpi_request.kpi_sample_type # pylint: disable=maybe-no-member kpi_sample_type = _create_kpi_request.kpi_sample_type # pylint: disable=maybe-no-member
kpi_device_id = _create_kpi_request.device_id.device_uuid.uuid # pylint: disable=maybe-no-member kpi_device_id = _create_kpi_request.device_id.device_uuid.uuid # pylint: disable=maybe-no-member
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment