From: peusterm Date: Mon, 19 Jun 2017 09:22:11 +0000 (+0200) Subject: Improved OpenStack API logging X-Git-Tag: v3.1~19^2~2 X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2Fvim-emu.git;a=commitdiff_plain;h=bbf4f74c2a98ceb8ccfaf094555ba370946ffeba Improved OpenStack API logging --- diff --git a/src/emuvim/api/openstack/compute.py b/src/emuvim/api/openstack/compute.py index 45cef59..fd9b1ac 100755 --- a/src/emuvim/api/openstack/compute.py +++ b/src/emuvim/api/openstack/compute.py @@ -8,6 +8,9 @@ import time import ip_handler as IP +LOG = logging.getLogger("api.openstack.compute") + + class HeatApiStackInvalidException(Exception): """ Exception thrown when a submitted stack is invalid. @@ -95,25 +98,25 @@ class OpenstackCompute(object): for server in stack.servers.values(): for port_name in server.port_names: if port_name not in stack.ports: - logging.warning("Server %s of stack %s has a port named %s that is not known." % + LOG.warning("Server %s of stack %s has a port named %s that is not known." % (server.name, stack.stack_name, port_name)) everything_ok = False if server.image is None: - logging.warning("Server %s holds no image." % (server.name)) + LOG.warning("Server %s holds no image." % (server.name)) everything_ok = False if server.command is None: - logging.warning("Server %s holds no command." % (server.name)) + LOG.warning("Server %s holds no command." % (server.name)) everything_ok = False for port in stack.ports.values(): if port.net_name not in stack.nets: - logging.warning("Port %s of stack %s has a network named %s that is not known." % + LOG.warning("Port %s of stack %s has a network named %s that is not known." % (port.name, stack.stack_name, port.net_name)) everything_ok = False if port.intf_name is None: - logging.warning("Port %s has no interface name." % (port.name)) + LOG.warning("Port %s has no interface name." % (port.name)) everything_ok = False if port.ip_address is None: - logging.warning("Port %s has no IP address." % (port.name)) + LOG.warning("Port %s has no IP address." % (port.name)) everything_ok = False for router in stack.routers.values(): for subnet_name in router.subnet_names: @@ -123,7 +126,7 @@ class OpenstackCompute(object): found = True break if not found: - logging.warning("Router %s of stack %s has a network named %s that is not known." % + LOG.warning("Router %s of stack %s has a network named %s that is not known." % (router.name, stack.stack_name, subnet_name)) everything_ok = False return everything_ok @@ -208,6 +211,7 @@ class OpenstackCompute(object): * *False*: else :rtype: ``bool`` """ + LOG.debug("updating stack {} with new_stack {}".format(old_stack_id, new_stack)) if old_stack_id not in self.stacks: return False old_stack = self.stacks[old_stack_id] @@ -399,7 +403,7 @@ class OpenstackCompute(object): :param server: Specifies the compute resource. :type server: :class:`heat.resources.server` """ - logging.debug("Starting new compute resources %s" % server.name) + LOG.debug("Starting new compute resources %s" % server.name) network = list() for port_name in server.port_names: @@ -447,7 +451,7 @@ class OpenstackCompute(object): :param server: The server that should be removed :type server: ``heat.resources.server`` """ - logging.debug("Stopping container %s with full name %s" % (server.name, server.full_name)) + LOG.debug("Stopping container %s with full name %s" % (server.name, server.full_name)) link_names = list() for port_name in server.port_names: link_names.append(self.find_port_by_name_or_id(port_name).intf_name) @@ -553,9 +557,9 @@ class OpenstackCompute(object): :type stack_operation: ``bool`` :return: :class:`heat.resources.net` """ - logging.debug("Creating network with name %s" % name) + LOG.debug("Creating network with name %s" % name) if self.find_network_by_name_or_id(name) is not None and not stack_operation: - logging.warning("Creating network with name %s failed, as it already exists" % name) + LOG.warning("Creating network with name %s failed, as it already exists" % name) raise Exception("Network with name %s already exists." % name) network = Net(name) network.id = str(uuid.uuid4()) @@ -593,9 +597,9 @@ class OpenstackCompute(object): """ port = self.find_port_by_name_or_id(name) if port is not None and not stack_operation: - logging.warning("Creating port with name %s failed, as it already exists" % name) + LOG.warning("Creating port with name %s failed, as it already exists" % name) raise Exception("Port with name %s already exists." % name) - logging.debug("Creating port with name %s" % name) + LOG.debug("Creating port with name %s" % name) port = Port(name) if not stack_operation: self.ports[port.id] = port diff --git a/src/emuvim/api/openstack/heat_parser.py b/src/emuvim/api/openstack/heat_parser.py index 672a76b..376659b 100755 --- a/src/emuvim/api/openstack/heat_parser.py +++ b/src/emuvim/api/openstack/heat_parser.py @@ -8,6 +8,9 @@ import logging import ip_handler as IP +LOG = logging.getLogger("api.openstack.heat.parser") + + class HeatParser: """ The HeatParser will parse a heat dictionary and create a stack and its components, to instantiate it within son-emu. @@ -96,7 +99,7 @@ class HeatParser: stack.nets[net_name] = self.compute.create_network(net_name, True) except Exception as e: - logging.warning('Could not create Net: ' + e.message) + LOG.warning('Could not create Net: ' + e.message) return if 'OS::Neutron::Subnet' in resource['type'] and "Net" not in resource['type']: @@ -116,7 +119,7 @@ class HeatParser: if not stack_update: net.set_cidr(IP.get_new_cidr(net.subnet_id)) except Exception as e: - logging.warning('Could not create Subnet: ' + e.message) + LOG.warning('Could not create Subnet: ' + e.message) return if 'OS::Neutron::Port' in resource['type']: @@ -135,7 +138,7 @@ class HeatParser: port.ip_address = net.get_new_ip_address(port.name) return except Exception as e: - logging.warning('Could not create Port: ' + e.message) + LOG.warning('Could not create Port: ' + e.message) self.bufferResource.append(resource) return @@ -168,7 +171,7 @@ class HeatParser: server.port_names.append(port_name) return except Exception as e: - logging.warning('Could not create Server: ' + e.message) + LOG.warning('Could not create Server: ' + e.message) return if 'OS::Neutron::RouterInterface' in resource['type']: @@ -189,7 +192,7 @@ class HeatParser: stack.routers[router_name].add_subnet(subnet_name) return except Exception as e: - logging.warning('Could not create RouterInterface: ' + e.__repr__()) + LOG.warning('Could not create RouterInterface: ' + e.__repr__()) self.bufferResource.append(resource) return @@ -202,7 +205,7 @@ class HeatParser: stack.ports[port_name].floating_ip = floating_network_id except Exception as e: - logging.warning('Could not create FloatingIP: ' + e.message) + LOG.warning('Could not create FloatingIP: ' + e.message) return if 'OS::Neutron::Router' in resource['type']: @@ -214,7 +217,7 @@ class HeatParser: print('Could not create Router: ' + e.message) return - logging.warning('Could not determine resource type!') + LOG.warning('Could not determine resource type: {}'.format(resource['type'])) return def shorten_server_name(self, server_name, stack): diff --git a/src/emuvim/api/openstack/openstack_dummies/heat_dummy_api.py b/src/emuvim/api/openstack/openstack_dummies/heat_dummy_api.py index e020a9d..107d8fd 100755 --- a/src/emuvim/api/openstack/openstack_dummies/heat_dummy_api.py +++ b/src/emuvim/api/openstack/openstack_dummies/heat_dummy_api.py @@ -306,9 +306,11 @@ class HeatUpdateStack(Resource): self.api = api def put(self, tenant_id, stack_name_or_id, stack_id=None): + LOG.debug("API CALL: %s PUT" % str(self.__class__.__name__)) return self.update_stack(tenant_id, stack_name_or_id, stack_id) def patch(self, tenant_id, stack_name_or_id, stack_id=None): + LOG.debug("API CALL: %s PATCH" % str(self.__class__.__name__)) return self.update_stack(tenant_id, stack_name_or_id, stack_id) def update_stack(self, tenant_id, stack_name_or_id, stack_id=None): @@ -323,7 +325,6 @@ class HeatUpdateStack(Resource): 500, if any exception occurred while updating. 202, if everything worked out. """ - LOG.debug("API CALL: %s PUT" % str(self.__class__.__name__)) try: old_stack = None if stack_name_or_id in self.api.compute.stacks: