Loading src/monitoring/README.md 0 → 100644 +68 −0 Original line number Diff line number Diff line # How to run locally the monitoring service (tested in Ubuntu 20.04) ## Download the grpc health probe ` GRPC_HEALTH_PROBE_VERSION=v0.2.0 ` ` wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 ` ` chmod +x /bin/grpc_health_probe ` ## Get packages ` python3 -m pip install pip-tools ` ` python3 -m pip install -r requirements.txt ` ## Install prometheus client ` pip3 install prometheus_client ` ## Execute server ` cd monitoring ` ` python3 monitoring/monitoring_server.py ` ## Execute client ` python3 monitoring_client.py ` # How to create and execute the monitoring server in a docker container ## Install docker ` curl -fsSL https://get.docker.com -o get-docker.sh ` sudo sh get-docker.sh ` ## Build service ` cd src ` ` ./build.sh ` ## Run service ` ./start.sh ` src/monitoring/build.sh 0 → 100755 +7 −0 Original line number Diff line number Diff line #!/usr/bin/env bash echo "BUILD monitoring server" docker build -t "monitoring:dockerfile" -f Dockerfile . echo "BUILD monitoring client" docker build -t "monitoring_client:dockerfile" -f tests/Dockerfile . src/monitoring/clean.sh 0 → 100755 +6 −0 Original line number Diff line number Diff line #!/usr/bin/env bash docker rm --force monitoring docker rm --force monitoring_client docker network remove teraflowbridge src/monitoring/context_pb2.py +150 −38 Original line number Diff line number Diff line Loading @@ -20,7 +20,7 @@ DESCRIPTOR = _descriptor.FileDescriptor( package='context', syntax='proto3', serialized_options=None, serialized_pb=_b('\n\rcontext.proto\x12\x07\x63ontext\"\x07\n\x05\x45mpty\"T\n\x07\x43ontext\x12\x1f\n\x04topo\x18\x01 \x01(\x0b\x32\x11.context.Topology\x12(\n\x03\x63tl\x18\x02 \x01(\x0b\x32\x1b.context.TeraFlowController\"H\n\x08Topology\x12\x1f\n\x06\x64\x65vice\x18\x01 \x03(\x0b\x32\x0f.context.Device\x12\x1b\n\x04link\x18\x02 \x03(\x0b\x32\r.context.Link\"1\n\x04Link\x12)\n\x0c\x65ndpointList\x18\x01 \x03(\x0b\x32\x13.context.EndPointId\"?\n\nConstraint\x12\x17\n\x0f\x63onstraint_type\x18\x01 \x01(\t\x12\x18\n\x10\x63onstraint_value\x18\x02 \x01(\t\"\xda\x01\n\x06\x44\x65vice\x12$\n\tdevice_id\x18\x01 \x01(\x0b\x32\x11.context.DeviceId\x12\x13\n\x0b\x64\x65vice_type\x18\x02 \x01(\t\x12,\n\rdevice_config\x18\x03 \x01(\x0b\x32\x15.context.DeviceConfig\x12>\n\x14\x64\x65vOperationalStatus\x18\x04 \x01(\x0e\x32 .context.DeviceOperationalStatus\x12\'\n\x0c\x65ndpointList\x18\x05 \x03(\x0b\x32\x11.context.EndPoint\"%\n\x0c\x44\x65viceConfig\x12\x15\n\rdevice_config\x18\x01 \x01(\t\"C\n\x08\x45ndPoint\x12$\n\x07port_id\x18\x01 \x01(\x0b\x32\x13.context.EndPointId\x12\x11\n\tport_type\x18\x02 \x01(\t\"O\n\nEndPointId\x12\x1e\n\x07port_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\x12!\n\x06\x64\x65v_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\",\n\x08\x44\x65viceId\x12 \n\tdevice_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\x14\n\x04Uuid\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"F\n\x12TeraFlowController\x12\x1d\n\x06\x63tl_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\x12\x11\n\tipaddress\x18\x02 \x01(\t\"L\n\x14\x41uthenticationResult\x12\x1d\n\x06\x63tl_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\x12\x15\n\rauthenticated\x18\x02 \x01(\x08*4\n\x17\x44\x65viceOperationalStatus\x12\x0c\n\x08\x44ISABLED\x10\x00\x12\x0b\n\x07\x45NABLED\x10\x01\x32\x44\n\x0e\x43ontextService\x12\x32\n\x0bGetTopology\x12\x0e.context.Empty\x1a\x11.context.Topology\"\x00\x62\x06proto3') serialized_pb=_b('\n\rcontext.proto\x12\x07\x63ontext\"\x07\n\x05\x45mpty\"{\n\x07\x43ontext\x12%\n\tcontextId\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x1f\n\x04topo\x18\x02 \x01(\x0b\x32\x11.context.Topology\x12(\n\x03\x63tl\x18\x03 \x01(\x0b\x32\x1b.context.TeraFlowController\"/\n\tContextId\x12\"\n\x0b\x63ontextUuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"m\n\x08Topology\x12#\n\x06topoId\x18\x02 \x01(\x0b\x32\x13.context.TopologyId\x12\x1f\n\x06\x64\x65vice\x18\x03 \x03(\x0b\x32\x0f.context.Device\x12\x1b\n\x04link\x18\x04 \x03(\x0b\x32\r.context.Link\"1\n\x04Link\x12)\n\x0c\x65ndpointList\x18\x01 \x03(\x0b\x32\x13.context.EndPointId\"R\n\nTopologyId\x12%\n\tcontextId\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x1d\n\x06topoId\x18\x02 \x01(\x0b\x32\r.context.Uuid\"?\n\nConstraint\x12\x17\n\x0f\x63onstraint_type\x18\x01 \x01(\t\x12\x18\n\x10\x63onstraint_value\x18\x02 \x01(\t\"\xda\x01\n\x06\x44\x65vice\x12$\n\tdevice_id\x18\x01 \x01(\x0b\x32\x11.context.DeviceId\x12\x13\n\x0b\x64\x65vice_type\x18\x02 \x01(\t\x12,\n\rdevice_config\x18\x03 \x01(\x0b\x32\x15.context.DeviceConfig\x12>\n\x14\x64\x65vOperationalStatus\x18\x04 \x01(\x0e\x32 .context.DeviceOperationalStatus\x12\'\n\x0c\x65ndpointList\x18\x05 \x03(\x0b\x32\x11.context.EndPoint\"%\n\x0c\x44\x65viceConfig\x12\x15\n\rdevice_config\x18\x01 \x01(\t\"C\n\x08\x45ndPoint\x12$\n\x07port_id\x18\x01 \x01(\x0b\x32\x13.context.EndPointId\x12\x11\n\tport_type\x18\x02 \x01(\t\"t\n\nEndPointId\x12#\n\x06topoId\x18\x01 \x01(\x0b\x32\x13.context.TopologyId\x12!\n\x06\x64\x65v_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\x12\x1e\n\x07port_id\x18\x03 \x01(\x0b\x32\r.context.Uuid\",\n\x08\x44\x65viceId\x12 \n\tdevice_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\x14\n\x04Uuid\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"K\n\x12TeraFlowController\x12\"\n\x06\x63tl_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x11\n\tipaddress\x18\x02 \x01(\t\"Q\n\x14\x41uthenticationResult\x12\"\n\x06\x63tl_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x15\n\rauthenticated\x18\x02 \x01(\x08*4\n\x17\x44\x65viceOperationalStatus\x12\x0c\n\x08\x44ISABLED\x10\x00\x12\x0b\n\x07\x45NABLED\x10\x01\x32\x44\n\x0e\x43ontextService\x12\x32\n\x0bGetTopology\x12\x0e.context.Empty\x1a\x11.context.Topology\"\x00\x62\x06proto3') ) _DEVICEOPERATIONALSTATUS = _descriptor.EnumDescriptor( Loading @@ -40,8 +40,8 @@ _DEVICEOPERATIONALSTATUS = _descriptor.EnumDescriptor( ], containing_type=None, serialized_options=None, serialized_start=939, serialized_end=991, serialized_start=1195, serialized_end=1247, ) _sym_db.RegisterEnumDescriptor(_DEVICEOPERATIONALSTATUS) Loading Loading @@ -83,19 +83,26 @@ _CONTEXT = _descriptor.Descriptor( containing_type=None, fields=[ _descriptor.FieldDescriptor( name='topo', full_name='context.Context.topo', index=0, name='contextId', full_name='context.Context.contextId', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='ctl', full_name='context.Context.ctl', index=1, name='topo', full_name='context.Context.topo', index=1, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='ctl', full_name='context.Context.ctl', index=2, number=3, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], Loading @@ -109,7 +116,38 @@ _CONTEXT = _descriptor.Descriptor( oneofs=[ ], serialized_start=35, serialized_end=119, serialized_end=158, ) _CONTEXTID = _descriptor.Descriptor( name='ContextId', full_name='context.ContextId', filename=None, file=DESCRIPTOR, containing_type=None, fields=[ _descriptor.FieldDescriptor( name='contextUuid', full_name='context.ContextId.contextUuid', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], nested_types=[], enum_types=[ ], serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], oneofs=[ ], serialized_start=160, serialized_end=207, ) Loading @@ -121,15 +159,22 @@ _TOPOLOGY = _descriptor.Descriptor( containing_type=None, fields=[ _descriptor.FieldDescriptor( name='device', full_name='context.Topology.device', index=0, number=1, type=11, cpp_type=10, label=3, name='topoId', full_name='context.Topology.topoId', index=0, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='device', full_name='context.Topology.device', index=1, number=3, type=11, cpp_type=10, label=3, has_default_value=False, default_value=[], message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='link', full_name='context.Topology.link', index=1, number=2, type=11, cpp_type=10, label=3, name='link', full_name='context.Topology.link', index=2, number=4, type=11, cpp_type=10, label=3, has_default_value=False, default_value=[], message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, Loading @@ -146,8 +191,8 @@ _TOPOLOGY = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=121, serialized_end=193, serialized_start=209, serialized_end=318, ) Loading Loading @@ -177,8 +222,46 @@ _LINK = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=195, serialized_end=244, serialized_start=320, serialized_end=369, ) _TOPOLOGYID = _descriptor.Descriptor( name='TopologyId', full_name='context.TopologyId', filename=None, file=DESCRIPTOR, containing_type=None, fields=[ _descriptor.FieldDescriptor( name='contextId', full_name='context.TopologyId.contextId', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='topoId', full_name='context.TopologyId.topoId', index=1, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], nested_types=[], enum_types=[ ], serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], oneofs=[ ], serialized_start=371, serialized_end=453, ) Loading Loading @@ -215,8 +298,8 @@ _CONSTRAINT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=246, serialized_end=309, serialized_start=455, serialized_end=518, ) Loading Loading @@ -274,8 +357,8 @@ _DEVICE = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=312, serialized_end=530, serialized_start=521, serialized_end=739, ) Loading Loading @@ -305,8 +388,8 @@ _DEVICECONFIG = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=532, serialized_end=569, serialized_start=741, serialized_end=778, ) Loading Loading @@ -343,8 +426,8 @@ _ENDPOINT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=571, serialized_end=638, serialized_start=780, serialized_end=847, ) Loading @@ -356,7 +439,7 @@ _ENDPOINTID = _descriptor.Descriptor( containing_type=None, fields=[ _descriptor.FieldDescriptor( name='port_id', full_name='context.EndPointId.port_id', index=0, name='topoId', full_name='context.EndPointId.topoId', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, Loading @@ -369,6 +452,13 @@ _ENDPOINTID = _descriptor.Descriptor( message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='port_id', full_name='context.EndPointId.port_id', index=2, number=3, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], Loading @@ -381,8 +471,8 @@ _ENDPOINTID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=640, serialized_end=719, serialized_start=849, serialized_end=965, ) Loading Loading @@ -412,8 +502,8 @@ _DEVICEID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=721, serialized_end=765, serialized_start=967, serialized_end=1011, ) Loading Loading @@ -443,8 +533,8 @@ _UUID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=767, serialized_end=787, serialized_start=1013, serialized_end=1033, ) Loading Loading @@ -481,8 +571,8 @@ _TERAFLOWCONTROLLER = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=789, serialized_end=859, serialized_start=1035, serialized_end=1110, ) Loading Loading @@ -519,29 +609,37 @@ _AUTHENTICATIONRESULT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=861, serialized_end=937, serialized_start=1112, serialized_end=1193, ) _CONTEXT.fields_by_name['contextId'].message_type = _CONTEXTID _CONTEXT.fields_by_name['topo'].message_type = _TOPOLOGY _CONTEXT.fields_by_name['ctl'].message_type = _TERAFLOWCONTROLLER _CONTEXTID.fields_by_name['contextUuid'].message_type = _UUID _TOPOLOGY.fields_by_name['topoId'].message_type = _TOPOLOGYID _TOPOLOGY.fields_by_name['device'].message_type = _DEVICE _TOPOLOGY.fields_by_name['link'].message_type = _LINK _LINK.fields_by_name['endpointList'].message_type = _ENDPOINTID _TOPOLOGYID.fields_by_name['contextId'].message_type = _CONTEXTID _TOPOLOGYID.fields_by_name['topoId'].message_type = _UUID _DEVICE.fields_by_name['device_id'].message_type = _DEVICEID _DEVICE.fields_by_name['device_config'].message_type = _DEVICECONFIG _DEVICE.fields_by_name['devOperationalStatus'].enum_type = _DEVICEOPERATIONALSTATUS _DEVICE.fields_by_name['endpointList'].message_type = _ENDPOINT _ENDPOINT.fields_by_name['port_id'].message_type = _ENDPOINTID _ENDPOINTID.fields_by_name['port_id'].message_type = _UUID _ENDPOINTID.fields_by_name['topoId'].message_type = _TOPOLOGYID _ENDPOINTID.fields_by_name['dev_id'].message_type = _DEVICEID _ENDPOINTID.fields_by_name['port_id'].message_type = _UUID _DEVICEID.fields_by_name['device_id'].message_type = _UUID _TERAFLOWCONTROLLER.fields_by_name['ctl_id'].message_type = _UUID _AUTHENTICATIONRESULT.fields_by_name['ctl_id'].message_type = _UUID _TERAFLOWCONTROLLER.fields_by_name['ctl_id'].message_type = _CONTEXTID _AUTHENTICATIONRESULT.fields_by_name['ctl_id'].message_type = _CONTEXTID DESCRIPTOR.message_types_by_name['Empty'] = _EMPTY DESCRIPTOR.message_types_by_name['Context'] = _CONTEXT DESCRIPTOR.message_types_by_name['ContextId'] = _CONTEXTID DESCRIPTOR.message_types_by_name['Topology'] = _TOPOLOGY DESCRIPTOR.message_types_by_name['Link'] = _LINK DESCRIPTOR.message_types_by_name['TopologyId'] = _TOPOLOGYID DESCRIPTOR.message_types_by_name['Constraint'] = _CONSTRAINT DESCRIPTOR.message_types_by_name['Device'] = _DEVICE DESCRIPTOR.message_types_by_name['DeviceConfig'] = _DEVICECONFIG Loading @@ -568,6 +666,13 @@ Context = _reflection.GeneratedProtocolMessageType('Context', (_message.Message, )) _sym_db.RegisterMessage(Context) ContextId = _reflection.GeneratedProtocolMessageType('ContextId', (_message.Message,), dict( DESCRIPTOR = _CONTEXTID, __module__ = 'context_pb2' # @@protoc_insertion_point(class_scope:context.ContextId) )) _sym_db.RegisterMessage(ContextId) Topology = _reflection.GeneratedProtocolMessageType('Topology', (_message.Message,), dict( DESCRIPTOR = _TOPOLOGY, __module__ = 'context_pb2' Loading @@ -582,6 +687,13 @@ Link = _reflection.GeneratedProtocolMessageType('Link', (_message.Message,), dic )) _sym_db.RegisterMessage(Link) TopologyId = _reflection.GeneratedProtocolMessageType('TopologyId', (_message.Message,), dict( DESCRIPTOR = _TOPOLOGYID, __module__ = 'context_pb2' # @@protoc_insertion_point(class_scope:context.TopologyId) )) _sym_db.RegisterMessage(TopologyId) Constraint = _reflection.GeneratedProtocolMessageType('Constraint', (_message.Message,), dict( DESCRIPTOR = _CONSTRAINT, __module__ = 'context_pb2' Loading Loading @@ -653,8 +765,8 @@ _CONTEXTSERVICE = _descriptor.ServiceDescriptor( file=DESCRIPTOR, index=0, serialized_options=None, serialized_start=993, serialized_end=1061, serialized_start=1249, serialized_end=1317, methods=[ _descriptor.MethodDescriptor( name='GetTopology', Loading src/monitoring/monitoring_client.py +7 −7 Original line number Diff line number Diff line import sys import grpc import monitoring import monitoring_pb2 as monitoring import monitoring_pb2_grpc import context import context_pb2 import json Loading @@ -16,7 +16,7 @@ class MonitoringClient: def __init__(self, server="monitoring", port="7070"): logger.info("init monitoringClient port " + port) self.channel=grpc.insecure_channel(server+':'+port) self.server=usc_pb2_grpc.MonitoringServiceStub(self.channel) self.server=monitoring_pb2_grpc.MonitoringServiceStub(self.channel) def IncludeKpi(self, request): logger.info("IncludeKpi: {}".format(request)) Loading Loading @@ -50,11 +50,11 @@ if __name__ == "__main__": else: port = "7070" # form request kpi = monitoring.Kpi() kpi.kpi_id.kpi_id = "KPIID0000" kpi.kpiDescription "KPI Desc" monitoring.KpiId.kpi_id = "KPIID0000" kpi.kpiDescription = "KPI Desc" # make call to server client = MonitoringClient(port) Loading Loading
src/monitoring/README.md 0 → 100644 +68 −0 Original line number Diff line number Diff line # How to run locally the monitoring service (tested in Ubuntu 20.04) ## Download the grpc health probe ` GRPC_HEALTH_PROBE_VERSION=v0.2.0 ` ` wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 ` ` chmod +x /bin/grpc_health_probe ` ## Get packages ` python3 -m pip install pip-tools ` ` python3 -m pip install -r requirements.txt ` ## Install prometheus client ` pip3 install prometheus_client ` ## Execute server ` cd monitoring ` ` python3 monitoring/monitoring_server.py ` ## Execute client ` python3 monitoring_client.py ` # How to create and execute the monitoring server in a docker container ## Install docker ` curl -fsSL https://get.docker.com -o get-docker.sh ` sudo sh get-docker.sh ` ## Build service ` cd src ` ` ./build.sh ` ## Run service ` ./start.sh `
src/monitoring/build.sh 0 → 100755 +7 −0 Original line number Diff line number Diff line #!/usr/bin/env bash echo "BUILD monitoring server" docker build -t "monitoring:dockerfile" -f Dockerfile . echo "BUILD monitoring client" docker build -t "monitoring_client:dockerfile" -f tests/Dockerfile .
src/monitoring/clean.sh 0 → 100755 +6 −0 Original line number Diff line number Diff line #!/usr/bin/env bash docker rm --force monitoring docker rm --force monitoring_client docker network remove teraflowbridge
src/monitoring/context_pb2.py +150 −38 Original line number Diff line number Diff line Loading @@ -20,7 +20,7 @@ DESCRIPTOR = _descriptor.FileDescriptor( package='context', syntax='proto3', serialized_options=None, serialized_pb=_b('\n\rcontext.proto\x12\x07\x63ontext\"\x07\n\x05\x45mpty\"T\n\x07\x43ontext\x12\x1f\n\x04topo\x18\x01 \x01(\x0b\x32\x11.context.Topology\x12(\n\x03\x63tl\x18\x02 \x01(\x0b\x32\x1b.context.TeraFlowController\"H\n\x08Topology\x12\x1f\n\x06\x64\x65vice\x18\x01 \x03(\x0b\x32\x0f.context.Device\x12\x1b\n\x04link\x18\x02 \x03(\x0b\x32\r.context.Link\"1\n\x04Link\x12)\n\x0c\x65ndpointList\x18\x01 \x03(\x0b\x32\x13.context.EndPointId\"?\n\nConstraint\x12\x17\n\x0f\x63onstraint_type\x18\x01 \x01(\t\x12\x18\n\x10\x63onstraint_value\x18\x02 \x01(\t\"\xda\x01\n\x06\x44\x65vice\x12$\n\tdevice_id\x18\x01 \x01(\x0b\x32\x11.context.DeviceId\x12\x13\n\x0b\x64\x65vice_type\x18\x02 \x01(\t\x12,\n\rdevice_config\x18\x03 \x01(\x0b\x32\x15.context.DeviceConfig\x12>\n\x14\x64\x65vOperationalStatus\x18\x04 \x01(\x0e\x32 .context.DeviceOperationalStatus\x12\'\n\x0c\x65ndpointList\x18\x05 \x03(\x0b\x32\x11.context.EndPoint\"%\n\x0c\x44\x65viceConfig\x12\x15\n\rdevice_config\x18\x01 \x01(\t\"C\n\x08\x45ndPoint\x12$\n\x07port_id\x18\x01 \x01(\x0b\x32\x13.context.EndPointId\x12\x11\n\tport_type\x18\x02 \x01(\t\"O\n\nEndPointId\x12\x1e\n\x07port_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\x12!\n\x06\x64\x65v_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\",\n\x08\x44\x65viceId\x12 \n\tdevice_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\x14\n\x04Uuid\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"F\n\x12TeraFlowController\x12\x1d\n\x06\x63tl_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\x12\x11\n\tipaddress\x18\x02 \x01(\t\"L\n\x14\x41uthenticationResult\x12\x1d\n\x06\x63tl_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\x12\x15\n\rauthenticated\x18\x02 \x01(\x08*4\n\x17\x44\x65viceOperationalStatus\x12\x0c\n\x08\x44ISABLED\x10\x00\x12\x0b\n\x07\x45NABLED\x10\x01\x32\x44\n\x0e\x43ontextService\x12\x32\n\x0bGetTopology\x12\x0e.context.Empty\x1a\x11.context.Topology\"\x00\x62\x06proto3') serialized_pb=_b('\n\rcontext.proto\x12\x07\x63ontext\"\x07\n\x05\x45mpty\"{\n\x07\x43ontext\x12%\n\tcontextId\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x1f\n\x04topo\x18\x02 \x01(\x0b\x32\x11.context.Topology\x12(\n\x03\x63tl\x18\x03 \x01(\x0b\x32\x1b.context.TeraFlowController\"/\n\tContextId\x12\"\n\x0b\x63ontextUuid\x18\x01 \x01(\x0b\x32\r.context.Uuid\"m\n\x08Topology\x12#\n\x06topoId\x18\x02 \x01(\x0b\x32\x13.context.TopologyId\x12\x1f\n\x06\x64\x65vice\x18\x03 \x03(\x0b\x32\x0f.context.Device\x12\x1b\n\x04link\x18\x04 \x03(\x0b\x32\r.context.Link\"1\n\x04Link\x12)\n\x0c\x65ndpointList\x18\x01 \x03(\x0b\x32\x13.context.EndPointId\"R\n\nTopologyId\x12%\n\tcontextId\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x1d\n\x06topoId\x18\x02 \x01(\x0b\x32\r.context.Uuid\"?\n\nConstraint\x12\x17\n\x0f\x63onstraint_type\x18\x01 \x01(\t\x12\x18\n\x10\x63onstraint_value\x18\x02 \x01(\t\"\xda\x01\n\x06\x44\x65vice\x12$\n\tdevice_id\x18\x01 \x01(\x0b\x32\x11.context.DeviceId\x12\x13\n\x0b\x64\x65vice_type\x18\x02 \x01(\t\x12,\n\rdevice_config\x18\x03 \x01(\x0b\x32\x15.context.DeviceConfig\x12>\n\x14\x64\x65vOperationalStatus\x18\x04 \x01(\x0e\x32 .context.DeviceOperationalStatus\x12\'\n\x0c\x65ndpointList\x18\x05 \x03(\x0b\x32\x11.context.EndPoint\"%\n\x0c\x44\x65viceConfig\x12\x15\n\rdevice_config\x18\x01 \x01(\t\"C\n\x08\x45ndPoint\x12$\n\x07port_id\x18\x01 \x01(\x0b\x32\x13.context.EndPointId\x12\x11\n\tport_type\x18\x02 \x01(\t\"t\n\nEndPointId\x12#\n\x06topoId\x18\x01 \x01(\x0b\x32\x13.context.TopologyId\x12!\n\x06\x64\x65v_id\x18\x02 \x01(\x0b\x32\x11.context.DeviceId\x12\x1e\n\x07port_id\x18\x03 \x01(\x0b\x32\r.context.Uuid\",\n\x08\x44\x65viceId\x12 \n\tdevice_id\x18\x01 \x01(\x0b\x32\r.context.Uuid\"\x14\n\x04Uuid\x12\x0c\n\x04uuid\x18\x01 \x01(\t\"K\n\x12TeraFlowController\x12\"\n\x06\x63tl_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x11\n\tipaddress\x18\x02 \x01(\t\"Q\n\x14\x41uthenticationResult\x12\"\n\x06\x63tl_id\x18\x01 \x01(\x0b\x32\x12.context.ContextId\x12\x15\n\rauthenticated\x18\x02 \x01(\x08*4\n\x17\x44\x65viceOperationalStatus\x12\x0c\n\x08\x44ISABLED\x10\x00\x12\x0b\n\x07\x45NABLED\x10\x01\x32\x44\n\x0e\x43ontextService\x12\x32\n\x0bGetTopology\x12\x0e.context.Empty\x1a\x11.context.Topology\"\x00\x62\x06proto3') ) _DEVICEOPERATIONALSTATUS = _descriptor.EnumDescriptor( Loading @@ -40,8 +40,8 @@ _DEVICEOPERATIONALSTATUS = _descriptor.EnumDescriptor( ], containing_type=None, serialized_options=None, serialized_start=939, serialized_end=991, serialized_start=1195, serialized_end=1247, ) _sym_db.RegisterEnumDescriptor(_DEVICEOPERATIONALSTATUS) Loading Loading @@ -83,19 +83,26 @@ _CONTEXT = _descriptor.Descriptor( containing_type=None, fields=[ _descriptor.FieldDescriptor( name='topo', full_name='context.Context.topo', index=0, name='contextId', full_name='context.Context.contextId', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='ctl', full_name='context.Context.ctl', index=1, name='topo', full_name='context.Context.topo', index=1, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='ctl', full_name='context.Context.ctl', index=2, number=3, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], Loading @@ -109,7 +116,38 @@ _CONTEXT = _descriptor.Descriptor( oneofs=[ ], serialized_start=35, serialized_end=119, serialized_end=158, ) _CONTEXTID = _descriptor.Descriptor( name='ContextId', full_name='context.ContextId', filename=None, file=DESCRIPTOR, containing_type=None, fields=[ _descriptor.FieldDescriptor( name='contextUuid', full_name='context.ContextId.contextUuid', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], nested_types=[], enum_types=[ ], serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], oneofs=[ ], serialized_start=160, serialized_end=207, ) Loading @@ -121,15 +159,22 @@ _TOPOLOGY = _descriptor.Descriptor( containing_type=None, fields=[ _descriptor.FieldDescriptor( name='device', full_name='context.Topology.device', index=0, number=1, type=11, cpp_type=10, label=3, name='topoId', full_name='context.Topology.topoId', index=0, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='device', full_name='context.Topology.device', index=1, number=3, type=11, cpp_type=10, label=3, has_default_value=False, default_value=[], message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='link', full_name='context.Topology.link', index=1, number=2, type=11, cpp_type=10, label=3, name='link', full_name='context.Topology.link', index=2, number=4, type=11, cpp_type=10, label=3, has_default_value=False, default_value=[], message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, Loading @@ -146,8 +191,8 @@ _TOPOLOGY = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=121, serialized_end=193, serialized_start=209, serialized_end=318, ) Loading Loading @@ -177,8 +222,46 @@ _LINK = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=195, serialized_end=244, serialized_start=320, serialized_end=369, ) _TOPOLOGYID = _descriptor.Descriptor( name='TopologyId', full_name='context.TopologyId', filename=None, file=DESCRIPTOR, containing_type=None, fields=[ _descriptor.FieldDescriptor( name='contextId', full_name='context.TopologyId.contextId', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='topoId', full_name='context.TopologyId.topoId', index=1, number=2, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], nested_types=[], enum_types=[ ], serialized_options=None, is_extendable=False, syntax='proto3', extension_ranges=[], oneofs=[ ], serialized_start=371, serialized_end=453, ) Loading Loading @@ -215,8 +298,8 @@ _CONSTRAINT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=246, serialized_end=309, serialized_start=455, serialized_end=518, ) Loading Loading @@ -274,8 +357,8 @@ _DEVICE = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=312, serialized_end=530, serialized_start=521, serialized_end=739, ) Loading Loading @@ -305,8 +388,8 @@ _DEVICECONFIG = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=532, serialized_end=569, serialized_start=741, serialized_end=778, ) Loading Loading @@ -343,8 +426,8 @@ _ENDPOINT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=571, serialized_end=638, serialized_start=780, serialized_end=847, ) Loading @@ -356,7 +439,7 @@ _ENDPOINTID = _descriptor.Descriptor( containing_type=None, fields=[ _descriptor.FieldDescriptor( name='port_id', full_name='context.EndPointId.port_id', index=0, name='topoId', full_name='context.EndPointId.topoId', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, Loading @@ -369,6 +452,13 @@ _ENDPOINTID = _descriptor.Descriptor( message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), _descriptor.FieldDescriptor( name='port_id', full_name='context.EndPointId.port_id', index=2, number=3, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR), ], extensions=[ ], Loading @@ -381,8 +471,8 @@ _ENDPOINTID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=640, serialized_end=719, serialized_start=849, serialized_end=965, ) Loading Loading @@ -412,8 +502,8 @@ _DEVICEID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=721, serialized_end=765, serialized_start=967, serialized_end=1011, ) Loading Loading @@ -443,8 +533,8 @@ _UUID = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=767, serialized_end=787, serialized_start=1013, serialized_end=1033, ) Loading Loading @@ -481,8 +571,8 @@ _TERAFLOWCONTROLLER = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=789, serialized_end=859, serialized_start=1035, serialized_end=1110, ) Loading Loading @@ -519,29 +609,37 @@ _AUTHENTICATIONRESULT = _descriptor.Descriptor( extension_ranges=[], oneofs=[ ], serialized_start=861, serialized_end=937, serialized_start=1112, serialized_end=1193, ) _CONTEXT.fields_by_name['contextId'].message_type = _CONTEXTID _CONTEXT.fields_by_name['topo'].message_type = _TOPOLOGY _CONTEXT.fields_by_name['ctl'].message_type = _TERAFLOWCONTROLLER _CONTEXTID.fields_by_name['contextUuid'].message_type = _UUID _TOPOLOGY.fields_by_name['topoId'].message_type = _TOPOLOGYID _TOPOLOGY.fields_by_name['device'].message_type = _DEVICE _TOPOLOGY.fields_by_name['link'].message_type = _LINK _LINK.fields_by_name['endpointList'].message_type = _ENDPOINTID _TOPOLOGYID.fields_by_name['contextId'].message_type = _CONTEXTID _TOPOLOGYID.fields_by_name['topoId'].message_type = _UUID _DEVICE.fields_by_name['device_id'].message_type = _DEVICEID _DEVICE.fields_by_name['device_config'].message_type = _DEVICECONFIG _DEVICE.fields_by_name['devOperationalStatus'].enum_type = _DEVICEOPERATIONALSTATUS _DEVICE.fields_by_name['endpointList'].message_type = _ENDPOINT _ENDPOINT.fields_by_name['port_id'].message_type = _ENDPOINTID _ENDPOINTID.fields_by_name['port_id'].message_type = _UUID _ENDPOINTID.fields_by_name['topoId'].message_type = _TOPOLOGYID _ENDPOINTID.fields_by_name['dev_id'].message_type = _DEVICEID _ENDPOINTID.fields_by_name['port_id'].message_type = _UUID _DEVICEID.fields_by_name['device_id'].message_type = _UUID _TERAFLOWCONTROLLER.fields_by_name['ctl_id'].message_type = _UUID _AUTHENTICATIONRESULT.fields_by_name['ctl_id'].message_type = _UUID _TERAFLOWCONTROLLER.fields_by_name['ctl_id'].message_type = _CONTEXTID _AUTHENTICATIONRESULT.fields_by_name['ctl_id'].message_type = _CONTEXTID DESCRIPTOR.message_types_by_name['Empty'] = _EMPTY DESCRIPTOR.message_types_by_name['Context'] = _CONTEXT DESCRIPTOR.message_types_by_name['ContextId'] = _CONTEXTID DESCRIPTOR.message_types_by_name['Topology'] = _TOPOLOGY DESCRIPTOR.message_types_by_name['Link'] = _LINK DESCRIPTOR.message_types_by_name['TopologyId'] = _TOPOLOGYID DESCRIPTOR.message_types_by_name['Constraint'] = _CONSTRAINT DESCRIPTOR.message_types_by_name['Device'] = _DEVICE DESCRIPTOR.message_types_by_name['DeviceConfig'] = _DEVICECONFIG Loading @@ -568,6 +666,13 @@ Context = _reflection.GeneratedProtocolMessageType('Context', (_message.Message, )) _sym_db.RegisterMessage(Context) ContextId = _reflection.GeneratedProtocolMessageType('ContextId', (_message.Message,), dict( DESCRIPTOR = _CONTEXTID, __module__ = 'context_pb2' # @@protoc_insertion_point(class_scope:context.ContextId) )) _sym_db.RegisterMessage(ContextId) Topology = _reflection.GeneratedProtocolMessageType('Topology', (_message.Message,), dict( DESCRIPTOR = _TOPOLOGY, __module__ = 'context_pb2' Loading @@ -582,6 +687,13 @@ Link = _reflection.GeneratedProtocolMessageType('Link', (_message.Message,), dic )) _sym_db.RegisterMessage(Link) TopologyId = _reflection.GeneratedProtocolMessageType('TopologyId', (_message.Message,), dict( DESCRIPTOR = _TOPOLOGYID, __module__ = 'context_pb2' # @@protoc_insertion_point(class_scope:context.TopologyId) )) _sym_db.RegisterMessage(TopologyId) Constraint = _reflection.GeneratedProtocolMessageType('Constraint', (_message.Message,), dict( DESCRIPTOR = _CONSTRAINT, __module__ = 'context_pb2' Loading Loading @@ -653,8 +765,8 @@ _CONTEXTSERVICE = _descriptor.ServiceDescriptor( file=DESCRIPTOR, index=0, serialized_options=None, serialized_start=993, serialized_end=1061, serialized_start=1249, serialized_end=1317, methods=[ _descriptor.MethodDescriptor( name='GetTopology', Loading
src/monitoring/monitoring_client.py +7 −7 Original line number Diff line number Diff line import sys import grpc import monitoring import monitoring_pb2 as monitoring import monitoring_pb2_grpc import context import context_pb2 import json Loading @@ -16,7 +16,7 @@ class MonitoringClient: def __init__(self, server="monitoring", port="7070"): logger.info("init monitoringClient port " + port) self.channel=grpc.insecure_channel(server+':'+port) self.server=usc_pb2_grpc.MonitoringServiceStub(self.channel) self.server=monitoring_pb2_grpc.MonitoringServiceStub(self.channel) def IncludeKpi(self, request): logger.info("IncludeKpi: {}".format(request)) Loading Loading @@ -50,11 +50,11 @@ if __name__ == "__main__": else: port = "7070" # form request kpi = monitoring.Kpi() kpi.kpi_id.kpi_id = "KPIID0000" kpi.kpiDescription "KPI Desc" monitoring.KpiId.kpi_id = "KPIID0000" kpi.kpiDescription = "KPI Desc" # make call to server client = MonitoringClient(port) Loading