Commits (4)
...@@ -14,8 +14,9 @@ ...@@ -14,8 +14,9 @@
import grpc import grpc
import logging import logging
from common.proto.context_pb2 import Empty
from monitoring.service.NameMapping import NameMapping from monitoring.service.NameMapping import NameMapping
from common.proto.telemetry_frontend_pb2 import CollectorId, Collector from common.proto.telemetry_frontend_pb2 import CollectorId, Collector, CollectorFilter, CollectorList
from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method from common.method_wrappers.Decorator import MetricsPool, safe_and_metered_rpc_method
from common.proto.telemetry_frontend_pb2_grpc import TelemetryFrontendServiceServicer from common.proto.telemetry_frontend_pb2_grpc import TelemetryFrontendServiceServicer
...@@ -37,4 +38,16 @@ class TelemetryFrontendServiceServicerImpl(TelemetryFrontendServiceServicer): ...@@ -37,4 +38,16 @@ class TelemetryFrontendServiceServicerImpl(TelemetryFrontendServiceServicer):
# collector_interval = request.interval_s # collector_interval = request.interval_s
response.collector_id.uuid = _collector_id.collector_id.uuid response.collector_id.uuid = _collector_id.collector_id.uuid
return response
@safe_and_metered_rpc_method(METRICS_POOL, LOGGER)
def StopCollector(self, request : CollectorId, grpc_context: grpc.ServicerContext # type: ignore
) -> Empty: # type: ignore
return Empty()
def SelectCollectors(self, request : CollectorFilter, contextgrpc_context: grpc.ServicerContext # type: ignore
) -> CollectorList: # type: ignore
response = CollectorList()
return response return response
\ No newline at end of file
...@@ -28,3 +28,7 @@ def create_collector_request(coll_id_str): ...@@ -28,3 +28,7 @@ def create_collector_request(coll_id_str):
_create_collector_request.duration_s = float(-1) _create_collector_request.duration_s = float(-1)
_create_collector_request.interval_s = float(-1) _create_collector_request.interval_s = float(-1)
return _create_collector_request return _create_collector_request
def create_collector_filter(filter):
_create_collector_filter = telemetry_frontend_pb2.CollectorFilter()
\ No newline at end of file
...@@ -16,8 +16,9 @@ import os ...@@ -16,8 +16,9 @@ import os
import pytest import pytest
import logging import logging
from typing import Union from typing import Union
from common.proto.context_pb2 import Empty
from common.Constants import ServiceNameEnum from common.Constants import ServiceNameEnum
from common.proto.telemetry_frontend_pb2 import CollectorId from common.proto.telemetry_frontend_pb2 import CollectorId, CollectorList
from common.proto.context_pb2_grpc import add_ContextServiceServicer_to_server from common.proto.context_pb2_grpc import add_ContextServiceServicer_to_server
from context.client.ContextClient import ContextClient from context.client.ContextClient import ContextClient
from common.tools.service.GenericGrpcService import GenericGrpcService from common.tools.service.GenericGrpcService import GenericGrpcService
...@@ -167,3 +168,14 @@ def test_start_collector(telemetryFrontend_client): ...@@ -167,3 +168,14 @@ def test_start_collector(telemetryFrontend_client):
LOGGER.debug(str(response)) LOGGER.debug(str(response))
assert isinstance(response, CollectorId) assert isinstance(response, CollectorId)
def test_stop_collector(telemetryFrontend_client):
LOGGER.warning('test_stop_collector requesting')
response = telemetryFrontend_client.StopCollector('1')
LOGGER.debug(str(response))
assert isinstance(response, Empty)
def test_select_collectors(telemetryFrontend_client):
LOGGER.warning('test_select_collector requesting')
response = telemetryFrontend_client.SelectCollectors()
LOGGER.debug(str(response))
assert isinstance(response, CollectorList)
\ No newline at end of file