Commit 9ab5f51b authored by Lluis Gifre Renom's avatar Lluis Gifre Renom
Browse files

Merge branch 'pr_log' into 'develop'

Resolve "[UBI] Logging issues not reporting timestamps"

See merge request !412
parents 6c8ec04f 349b486f
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ from sqlalchemy import Column, Integer, String, Text
from sqlalchemy.orm import registry
from common.proto.kpi_manager_pb2 import KpiDescriptor

logging.basicConfig(level=logging.INFO)
LOGGER = logging.getLogger(__name__)

# Create a base class for declarative models
+5 −5
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@ class KpiManagerServiceServicerImpl(KpiManagerServiceServicer):
        self, request: KpiDescriptor, grpc_context: grpc.ServicerContext # type: ignore
    ) -> KpiId: # type: ignore
        response = KpiId()
        LOGGER.info("Received gRPC message object: {:}".format(request))
        LOGGER.debug(f"SetKpiDescriptor - Received gRPC message object: {request}")
        kpi_to_insert = KpiModel.convert_KpiDescriptor_to_row(request)
        if self.kpi_db_obj.add_row_to_db(kpi_to_insert):
            response.kpi_id.uuid = request.kpi_id.kpi_id.uuid
@@ -47,11 +47,11 @@ class KpiManagerServiceServicerImpl(KpiManagerServiceServicer):
        self, request: KpiId, grpc_context: grpc.ServicerContext # type: ignore
    ) -> KpiDescriptor: # type: ignore
        response = KpiDescriptor()
        LOGGER.info("Received gRPC message object: {:}".format(request))
        LOGGER.debug(f"GetKpiDescriptor - Received gRPC message object: {request}")
        kpi_id_to_search = request.kpi_id.uuid
        row = self.kpi_db_obj.search_db_row_by_id(KpiModel, 'kpi_id', kpi_id_to_search)
        if row is None:
            LOGGER.info('No matching row found kpi id: {:}'.format(kpi_id_to_search))
            LOGGER.error(f"No matching row found kpi id: {kpi_id_to_search}")
            raise NotFoundException('KpiDescriptor', kpi_id_to_search)
        response = KpiModel.convert_row_to_KpiDescriptor(row)
        return response
@@ -60,7 +60,7 @@ class KpiManagerServiceServicerImpl(KpiManagerServiceServicer):
    def DeleteKpiDescriptor(
        self, request: KpiId, grpc_context: grpc.ServicerContext # type: ignore
    ) -> Empty: # type: ignore
        LOGGER.info("Received gRPC message object: {:}".format(request))
        LOGGER.debug(f"DeleteKpiDescriptor - Received gRPC message object: {request}")
        kpi_id_to_search = request.kpi_id.uuid
        self.kpi_db_obj.delete_db_row_by_id(KpiModel, 'kpi_id', kpi_id_to_search)
        return Empty()
@@ -69,7 +69,7 @@ class KpiManagerServiceServicerImpl(KpiManagerServiceServicer):
    def SelectKpiDescriptor(
        self, filter: KpiDescriptorFilter, grpc_context: grpc.ServicerContext # type: ignore
    ) -> KpiDescriptorList: # type: ignore
        LOGGER.info("Received gRPC message object: {:}".format(filter))
        LOGGER.debug(f"SelectKpiDescriptor - Received gRPC message object: {filter}")
        response = KpiDescriptorList()
        rows = self.kpi_db_obj.select_with_filter(KpiModel, filter)
        for row in rows:
+1 −1
Original line number Diff line number Diff line
@@ -30,7 +30,7 @@ def main():
    global LOGGER # pylint: disable=global-statement

    log_level = get_log_level()
    logging.basicConfig(level=log_level)
    logging.basicConfig(level=log_level, format="[%(asctime)s] %(levelname)s:%(name)s:%(message)s")
    LOGGER = logging.getLogger(__name__)

    signal.signal(signal.SIGINT,  signal_handler)
+1 −1
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@ def main():
    global LOGGER # pylint: disable=global-statement

    log_level = get_log_level()
    logging.basicConfig(level=log_level)
    logging.basicConfig(level=log_level, format="[%(asctime)s] %(levelname)s:%(name)s:%(message)s")
    LOGGER = logging.getLogger(__name__)

    signal.signal(signal.SIGINT,  signal_handler)
+7 −7
Original line number Diff line number Diff line
@@ -49,21 +49,21 @@ class KpiValueWriter(GenericGrpcService):

        consumer = self.kafka_consumer
        consumer.subscribe([KafkaTopic.VALUE.value])
        LOGGER.debug("Kafka Consumer start listenng on topic: {:}".format(KafkaTopic.VALUE.value))
        LOGGER.debug(f"Kafka Consumer start listening on topic: {KafkaTopic.VALUE.value}")
        while True:
            raw_kpi = consumer.poll(1.0)
            if raw_kpi is None:
                continue
            elif raw_kpi.error():
                if raw_kpi.error().code() != KafkaError._PARTITION_EOF:
                    print("Consumer error: {}".format(raw_kpi.error()))
                    LOGGER.debug(f"Consumer error: {raw_kpi.error()}")
                continue
            try:
                kpi_value = json.loads(raw_kpi.value().decode('utf-8'))
                LOGGER.info("Received KPI : {:}".format(kpi_value))
                LOGGER.debug(f"Received KPI: {kpi_value}")
                self.get_kpi_descriptor(kpi_value, kpi_manager_client, metric_writer)
            except:
                LOGGER.exception("Error detail: ")
            except Exception as ex:
                LOGGER.exception(f"Error detail: {ex}")
                continue

    def get_kpi_descriptor(self, kpi_value: str, kpi_manager_client, metric_writer):
@@ -73,9 +73,9 @@ class KpiValueWriter(GenericGrpcService):
            kpi_descriptor_object = KpiDescriptor()
            kpi_descriptor_object = kpi_manager_client.GetKpiDescriptor(kpi_id)
            if kpi_descriptor_object.kpi_id.kpi_id.uuid == kpi_id.kpi_id.uuid:
                LOGGER.info("Extracted KpiDescriptor: {:}".format(kpi_descriptor_object))
                LOGGER.debug(f"Extracted KpiDescriptor: {kpi_descriptor_object}")
                metric_writer.create_and_expose_cooked_kpi(kpi_descriptor_object, kpi_value)
            else:
                LOGGER.info("No KPI Descriptor found in Database for Kpi ID: {:}".format(kpi_id))
                LOGGER.warning(f"No KPI Descriptor found in Database for KPI ID: {kpi_id}")
        except:
            LOGGER.exception("Unable to get KpiDescriptor")
Loading