Comment 3 for bug 1581649

Revision history for this message
Ryan Brady (rbrady) wrote :

I worked with Renat to attempt debug this issue today. I made the following changes to the environment:

1. Added new section to /etc/mistral/mistral.conf to ensure the mistral engine wasn't having its messages stolen by another service using the same topic.

[engine]
topic = mistral_engine_tripleo

2. Added code to https://github.com/openstack/mistral/blob/master/mistral/engine/rpc.py in each of the Client classes in start_action and run_action methods to log the return value.

e.g.

    @wrap_messaging_exception
    def start_action(self, action_name, action_input,
                     description=None, **params):
        """Starts action sending a request to engine over RPC.
        :return: Action execution.
        """
        ret_val = self._client.call(
            auth_ctx.ctx(),
            'start_action',
            action_name=action_name,
            action_input=action_input or {},
            description=description,
            params=params
        )
        LOG.info("[engine]After start action %s" % ret_val)
        return ret_val

This resulted in seeing messages from the ExecutorClient displayed, but the log messages from engine were missing from /var/log/mistral/mistral-server.log.

Renat's guidance at the end of our session today was:

'Try to run API w/o Apache, if it works then we need to look at how Mistral API is configured for launching with Apache init script or something. My guess that that RPC executor is not properly configured e.g. look at: https://github.com/openstack/mistral/blob/master/mistral/cmd/launch.py#L125 in the init script we may want to change "eventlet" to "blocking" because I think eventlet won't work with Apache and hence RPC messages won't be handled'

-r