Commit 1f76be28 authored by francisco.moreno.external@atos.net's avatar francisco.moreno.external@atos.net
Browse files

Minor fix in monitoring.proto

parent 9ab36abc
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -35,8 +35,8 @@ service MonitoringService {
  rpc CreateKpiAlarm        (AlarmDescriptor    ) returns (AlarmID             ) {}
  rpc EditKpiAlarm          (AlarmDescriptor    ) returns (context.Empty       ) {}
  rpc GetAlarms             (context.Empty      ) returns (AlarmIDList         ) {}
  rpc GetAlarmDescriptor    (AlarmSubscription  ) returns (AlarmDescriptor     ) {}
  rpc GetAlarmResponseStream(AlarmID            ) returns (stream AlarmResponse) {}
  rpc GetAlarmDescriptor    (AlarmID            ) returns (AlarmDescriptor     ) {}
  rpc GetAlarmResponseStream(AlarmSubscription  ) returns (stream AlarmResponse) {}
  rpc GetStreamKpi          (KpiId              ) returns (stream Kpi          ) {}
  rpc GetInstantKpi         (KpiId              ) returns (KpiList             ) {}
}
+2 −2
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ from common.tools.grpc.Tools import grpc_message_to_json_string
from common.proto.context_pb2 import Empty
from common.proto.monitoring_pb2 import Kpi, KpiDescriptor, KpiId, MonitorKpiRequest, EditedKpiDescriptor, \
    KpiDescriptorList, BundleKpiDescriptor, KpiQuery, KpiList, SubsDescriptor, SubscriptionID, SubsIDList, \
    AlarmDescriptor, AlarmID, AlarmIDList, AlarmResponse
    AlarmDescriptor, AlarmID, AlarmIDList, AlarmResponse, AlarmSubscription
from common.proto.monitoring_pb2_grpc import MonitoringServiceStub

LOGGER = logging.getLogger(__name__)
@@ -168,7 +168,7 @@ class MonitoringClient:
        LOGGER.debug('GetAlarmDescriptor result: {:s}'.format(grpc_message_to_json_string(response)))
        return response

    def GetAlarmResponseStream(self, request : AlarmID) -> AlarmResponse:
    def GetAlarmResponseStream(self, request : AlarmSubscription) -> AlarmResponse:
        LOGGER.debug('GetAlarmResponseStream: {:s}'.format(grpc_message_to_json_string(request)))
        response = self.stub.GetAlarmResponseStream(request)
        LOGGER.debug('GetAlarmResponseStream result: {:s}'.format(grpc_message_to_json_string(response)))
+4 −3
Original line number Diff line number Diff line
@@ -24,8 +24,9 @@ from common.proto.kpi_sample_types_pb2 import KpiSampleType
from common.proto.monitoring_pb2_grpc import MonitoringServiceServicer
from common.proto.monitoring_pb2 import AlarmResponse, AlarmDescriptor, AlarmIDList, SubsIDList, KpiId, \
    KpiDescriptor, KpiList, KpiQuery, SubsDescriptor, SubscriptionID, AlarmID, EditedKpiDescriptor, KpiDescriptorList, \
    BundleKpiDescriptor, MonitorKpiRequest, Kpi
    BundleKpiDescriptor, MonitorKpiRequest, Kpi, AlarmSubscription
from common.rpc_method_wrapper.ServiceExceptions import ServiceException
from common.tools.timestamp.Converters import timestamp_float_to_string

from monitoring.service import SqliteTools, InfluxTools
from device.client.DeviceClient import DeviceClient
@@ -184,7 +185,7 @@ class MonitoringServiceServicerImpl(MonitoringServiceServicer):
            deviceId        = kpiDescriptor.device_id.device_uuid.uuid
            endpointId      = kpiDescriptor.endpoint_id.endpoint_uuid.uuid
            serviceId       = kpiDescriptor.service_id.service_uuid.uuid
            time_stamp      = request.timestamp
            time_stamp      = timestamp_float_to_string(request.timestamp.timestamp)
            kpi_value       = getattr(request.kpi_value, request.kpi_value.WhichOneof('value'))

            # Build the structure to be included as point in the influxDB
@@ -346,7 +347,7 @@ class MonitoringServiceServicerImpl(MonitoringServiceServicer):
        except Exception as e:  # pragma: no cover
            LOGGER.exception('GetAlarmDescriptor exception')

    def GetAlarmResponseStream(self, request : AlarmID, grpc_context : grpc.ServicerContext) -> Iterator[AlarmResponse]:
    def GetAlarmResponseStream(self, request : AlarmSubscription, grpc_context : grpc.ServicerContext) -> Iterator[AlarmResponse]:

        LOGGER.info('GetAlarmResponseStream')
        try:
+4 −2
Original line number Diff line number Diff line
@@ -14,6 +14,8 @@

from common.proto import monitoring_pb2
from common.proto.kpi_sample_types_pb2 import KpiSampleType
from common.tools.timestamp.Converters import timestamp_string_to_float


def kpi():
    _kpi                    = monitoring_pb2.Kpi()
@@ -44,6 +46,6 @@ def monitor_kpi_request(kpi_uuid, monitoring_window_s, sampling_rate_s):
def include_kpi_request():
    _include_kpi_request                        = monitoring_pb2.Kpi()
    _include_kpi_request.kpi_id.kpi_id.uuid     = str(1)    # pylint: disable=maybe-no-member
    _include_kpi_request.timestamp    = "2021-10-12T13:14:42Z"
    _include_kpi_request.kpi_value.intVal       = 500       # pylint: disable=maybe-no-member
    _include_kpi_request.timestamp.timestamp    = timestamp_string_to_float("2021-10-12T13:14:42Z")
    _include_kpi_request.kpi_value.int32Val       = 500       # pylint: disable=maybe-no-member
    return _include_kpi_request
+8 −7
Original line number Diff line number Diff line
@@ -22,10 +22,11 @@ from common.orm.Database import Database
from common.orm.Factory import get_database_backend, BackendEnum as DatabaseBackendEnum
from common.message_broker.Factory import get_messagebroker_backend, BackendEnum as MessageBrokerBackendEnum
from common.message_broker.MessageBroker import MessageBroker
from common.proto.monitoring_pb2 import KpiId, KpiDescriptor

from context.client.ContextClient import ContextClient
from context.service.grpc_server.ContextService import ContextService
from common.proto.context_pb2 import EventTypeEnum, DeviceEvent, Device
from common.proto.context_pb2 import EventTypeEnum, DeviceEvent, Device, Empty

from device.client.DeviceClient import DeviceClient
from device.service.DeviceService import DeviceService
@@ -166,7 +167,7 @@ def test_create_kpi(monitoring_client): # pylint: disable=redefined-outer-name
    LOGGER.warning('test_create_kpi requesting')
    response = monitoring_client.CreateKpi(create_kpi_request())
    LOGGER.debug(str(response))
    assert isinstance(response, monitoring_pb2.KpiId)
    assert isinstance(response, KpiId)

# Test case that makes use of client fixture to test server's MonitorKpi method
def test_monitor_kpi(
@@ -201,7 +202,7 @@ def test_monitor_kpi(
    _monitor_kpi_request = monitor_kpi_request(response.kpi_id.uuid, 120, 5) # pylint: disable=maybe-no-member
    response = monitoring_client.MonitorKpi(_monitor_kpi_request)
    LOGGER.debug(str(response))
    assert isinstance(response, context_pb2.Empty)
    assert isinstance(response, Empty)


# Test case that makes use of client fixture to test server's IncludeKpi method
@@ -210,21 +211,21 @@ def test_include_kpi(monitoring_client): # pylint: disable=redefined-outer-name
    LOGGER.warning('test_include_kpi requesting')
    response = monitoring_client.IncludeKpi(include_kpi_request())
    LOGGER.debug(str(response))
    assert isinstance(response, context_pb2.Empty)
    assert isinstance(response, Empty)

# Test case that makes use of client fixture to test server's GetStreamKpi method
def test_get_stream_kpi(monitoring_client): # pylint: disable=redefined-outer-name
    LOGGER.warning('test_getstream_kpi begin')
    response = monitoring_client.GetStreamKpi(kpi())
    LOGGER.debug(str(response))
    #assert isinstance(response, monitoring_pb2.Kpi)
    #assert isinstance(response, Kpi)

# Test case that makes use of client fixture to test server's GetInstantKpi method
# def test_get_instant_kpi(monitoring_client): # pylint: disable=redefined-outer-name
#     LOGGER.warning('test_getinstant_kpi begin')
#     response = monitoring_client.GetInstantKpi(kpi_id())
#     LOGGER.debug(str(response))
#     # assert isinstance(response, monitoring_pb2.Kpi)
#     # assert isinstance(response, Kpi)

# Test case that makes use of client fixture to test server's GetInstantKpi method
def test_get_kpidescritor_kpi(monitoring_client): # pylint: disable=redefined-outer-name
@@ -232,7 +233,7 @@ def test_get_kpidescritor_kpi(monitoring_client): # pylint: disable=redefined-ou
    response = monitoring_client.CreateKpi(create_kpi_request())
    response = monitoring_client.GetKpiDescriptor(response)
    LOGGER.debug(str(response))
    assert isinstance(response, monitoring_pb2.KpiDescriptor)
    assert isinstance(response, KpiDescriptor)

def test_sqlitedb_tools_insert_kpi(sql_db): # pylint: disable=redefined-outer-name
    LOGGER.warning('test_sqlitedb_tools_insert_kpi begin')