Skip to content
Snippets Groups Projects
Commit 883bbf47 authored by delacal's avatar delacal
Browse files

Fixed the L3 security status KPIs monitoring in CentralizedAttackDetector component

parent 752bbe52
No related branches found
No related tags found
2 merge requests!142Release TeraFlowSDN 2.1,!93Updated L3 components + scalability
......@@ -32,7 +32,9 @@ from common.proto.kpi_sample_types_pb2 import KpiSampleType
# from monitoring.client.MonitoringClient import MonitoringClient
from monitoring.client.MonitoringClient import MonitoringClient
from common.proto.monitoring_pb2 import Kpi
from common.tools.timestamp.Converters import timestamp_utcnow_to_float
from common.proto.context_pb2 import Timestamp
LOGGER = logging.getLogger(__name__)
here = os.path.dirname(os.path.abspath(__file__))
......@@ -70,7 +72,7 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto
# create kpi
kpi_description: KpiDescriptor = KpiDescriptor()
kpi_description.kpi_description = "L3 security status of service {}".format(service_id)
kpi_description.service_id.service_uuid.uuid = service_id
kpi_description.service_id.service_uuid.uuid = str(service_id)
kpi_description.kpi_sample_type = KpiSampleType.KPISAMPLETYPE_UNKNOWN
new_kpi = client.SetKpi(kpi_description)
......@@ -152,14 +154,19 @@ class l3_centralizedattackdetectorServiceServicerImpl(L3Centralizedattackdetecto
# Counter 2: Rate of crypto attack connections with respect to the total number of connections
kpi_class = Kpi()
kpi_class.kpi_id.kpi_id.uuid = self.predicted_class_kpi_id.uuid
kpi_class.kpi_value.int32Val = 1 if request.tag_name == "Crypto" else 0
kpi_class.kpi_id.kpi_id.uuid = str(self.predicted_class_kpi_id)
kpi_class.kpi_value.int32Val = 1 if output.tag_name == "Crypto" else 0
kpi_prob = Kpi()
kpi_prob.kpi_id.kpi_id.uuid = self.class_probability_kpi_id.uuid
kpi_prob.kpi_value.floatVal = request.confidence
kpi_prob.kpi_id.kpi_id.uuid = str(self.class_probability_kpi_id)
kpi_prob.kpi_value.floatVal = output.confidence
# timestamp = timestamp_utcnow_to_float()
timestamp = Timestamp()
timestamp.timestamp = timestamp_utcnow_to_float()
kpi_class.timestamp = kpi_prob.timestamp = timestamp_utcnow_to_float()
kpi_class.timestamp.CopyFrom(timestamp)
kpi_prob.timestamp.CopyFrom(kpi_class.timestamp)
self.monitoring_client.IncludeKpi(kpi_class)
self.monitoring_client.IncludeKpi(kpi_prob)
......
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