On Thu, Feb 02, 2012 at 12:00:44AM -0500, Douglas Landgraf wrote:
> Hello,
>      flowID is schema that we will be including in vdsm API to oVirt
> Engine people share the ID of engine transaction to vdsm.
> With this in hands, we will add the ID of transactions to our log.
> I would like to know your opinion how we could do that without break
> our API, like include new parameters to our calls.
> Should we add at BindingXMLRPC.py -> wrapper() a code to search for
> a 'flowID' key into functions which use dict as parameter (like
> create)? [1] Maybe change at other level inside BindingXMLRPC ?

Moti came up an idea from that department: we can abuse one of the http
headers (say, X-FlowID) and it in BindingXMLRPC._createXMLRPCServer,

class LoggingHandle:
    def parse_request(self):
        threadLocal.flowID = self.headers.get('X-FlowID')

I hate this crossing of layers, but it could keep our formal API intact.

vdsm-devel mailing list

Reply via email to