Commit 07a12457 authored by Javi Moreno's avatar Javi Moreno
Browse files

INfluxDB Up in server

parent b3b128bb
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
import os

from monitoring.proto import context_pb2
from monitoring.service import sqlite_tools
from monitoring.service import sqlite_tools, influx_tools

from monitoring.proto import monitoring_pb2
from monitoring.proto import monitoring_pb2_grpc
@@ -14,6 +16,10 @@ from prometheus_client import Counter, Gauge
MONITORING_GETINSTANTKPI_REQUEST_TIME = Summary('monitoring_getinstantkpi_processing_seconds', 'Time spent processing monitoring instant kpi request')
MONITORING_INCLUDEKPI_COUNTER = Counter('monitoring_includekpi_counter', 'Monitoring include kpi request counter')

INFLUXDB_USER = os.environ.get("INFLUXDB_USER")
INFLUXDB_PASS = os.environ.get("INFLUXDB_PASSWORD")
INFLUXDB_DB = os.environ.get("INFLUXDB_DATABASE")

class MonitoringServiceServicerImpl(monitoring_pb2_grpc.MonitoringServiceServicer):
    def __init__(self):
        LOGGER.info('Init monitoringService')
@@ -21,7 +27,7 @@ class MonitoringServiceServicerImpl(monitoring_pb2_grpc.MonitoringServiceService
        self.sql_db = sqlite_tools.SQLite('monitoring.db')

        # Create influx_db client
        # self.influx_db = influx_tools.Influx("host",port,"user","pass","database")
        self.influx_db = influx_tools.Influx("localhost","8086",INFLUXDB_USER,INFLUXDB_PASS,INFLUXDB_DB)

    # CreateKpi (CreateKpiRequest) returns (KpiId) {}
    def CreateKpi(self, request : monitoring_pb2.CreateKpiRequest, context) -> monitoring_pb2.KpiId :
@@ -77,9 +83,9 @@ class MonitoringServiceServicerImpl(monitoring_pb2_grpc.MonitoringServiceService
        kpi_value = request.kpi_value.intVal

        # Build the structure to be included as point in the influxDB
        # self.influx_db.write_KPI(time_stamp,kpi.kpi_id.kpi_id.uuid,kpi.device_id.device_id.uuid,kpi.kpi_sample_type,kpi_value)
        self.influx_db.write_KPI(time_stamp,kpi.kpi_id.kpi_id.uuid,kpi.device_id.device_id.uuid,kpi.kpi_sample_type,kpi_value)

        # self.influx_db.read_KPI_points()
        self.influx_db.read_KPI_points()

        return context_pb2.Empty()