Re: [jira] Commented: (SM-751) Flow tracing with correlation id
On 12/7/06, Roger Menday <[EMAIL PROTECTED]> wrote: I get the impression that the servicemix-bpe component is not using the latest ode code - however, as it is today, this component *doesn't* seem to be sticking the correlationID, into exchanges it is making. This would be useful here too. I guess this will also be a problem with any non-servicemix components too :) ? servicemix-bpe also doesn't add the senderEndpoint as a property into the exchanges it makes. servicemix-bpe is based on a donation to the ODE project which is not maintained. You should try the ODE Service Engine provided by the ODE project itself. I'm currently looking at the audit component, and knowing the senderEndpoint is important to know the initiator of an exchange (?), or can I find this out some other way ... (?) correlationId and senderEndpoint seem generally useful things to ship around in MessageExchanges. Is this the sort of thing JBI should specify I wonder ... ? I do agree. Maybe this will be part of the 2.0 spec ... Roger ps. the SVN trunk doesn't seem to build the core module at the moment. > >> >> ? >> >> thanks, >> >> Roger >> > >> >> Flow tracing with correlation id >> >> >> >> >> >> Key: SM-751 >> >> URL: https://issues.apache.org/activemq/browse/SM-751 >> >> Project: ServiceMix >> >> Issue Type: Improvement >> >>Reporter: Gianfranco Boccalon >> >> Attachments: servicemix-components.zip >> >> >> >> >> >> Add the possibility to trace the flow of the messages inside a >> Service Assembly. >> >> For example, if we have a Service Assembly composed of three >> components, two binding components (call them BC1 and BC2) and a >> service engine (SE) organized in this sequence BC1->SE->BC2, we need >> to recognize that the output messages produced by the SE component >> are related to some messages provided by BC1. >> >> To do this, we need to add a "process correlation id" to the >> message exchanges and to modify the used components, to propagate >> this correlation id in all Message Exchanges sent. >> >> Enclosed there is the modified code for the following components: >> >> - HTTP binding component: here I added the code to generate the >> correlation Id and set it in the Message Exchange >> >> - Splitter >> >> - Router (the lightweight component) >> >> >> > >> > >> >> >> > > -- Cheers, Guillaume Nodet
Re: [jira] Commented: (SM-751) Flow tracing with correlation id
--- > > Btw, looking at the patch, I was wondering if it would be interesting to have a multi-level > correlationId, so that we could trace the exchange to its "parent" exchange and from > the parent to the grand-parent and so forth... > Hi, Sorry to drag out an old email, but I was wondering if the proposition above made it into the code ? It would be quite useful to have ... (as I see it when a new correlationid is added into the properties of an exchange which already has one, another property records the parentcorrelationid ... ) Hi Guillaume, thanks for your reply. Not yet. Would you mind raising another issue for that ? Sure. If you have any time to write a patch ... ;) well, i could try, but I'm not sure if I know my way around the code well enough. I get the impression that the servicemix-bpe component is not using the latest ode code - however, as it is today, this component *doesn't* seem to be sticking the correlationID, into exchanges it is making. This would be useful here too. I guess this will also be a problem with any non-servicemix components too :) ? servicemix-bpe also doesn't add the senderEndpoint as a property into the exchanges it makes. I'm currently looking at the audit component, and knowing the senderEndpoint is important to know the initiator of an exchange (?), or can I find this out some other way ... (?) correlationId and senderEndpoint seem generally useful things to ship around in MessageExchanges. Is this the sort of thing JBI should specify I wonder ... ? Roger ps. the SVN trunk doesn't seem to build the core module at the moment. ? thanks, Roger > >> Flow tracing with correlation id >> >> >> Key: SM-751 >> URL: https://issues.apache.org/activemq/browse/SM-751 >> Project: ServiceMix >> Issue Type: Improvement >>Reporter: Gianfranco Boccalon >> Attachments: servicemix-components.zip >> >> >> Add the possibility to trace the flow of the messages inside a Service Assembly. >> For example, if we have a Service Assembly composed of three components, two binding components (call them BC1 and BC2) and a service engine (SE) organized in this sequence BC1->SE->BC2, we need to recognize that the output messages produced by the SE component are related to some messages provided by BC1. >> To do this, we need to add a "process correlation id" to the message exchanges and to modify the used components, to propagate this correlation id in all Message Exchanges sent. >> Enclosed there is the modified code for the following components: >> - HTTP binding component: here I added the code to generate the correlation Id and set it in the Message Exchange >> - Splitter >> - Router (the lightweight component) >> > >
Re: [jira] Commented: (SM-751) Flow tracing with correlation id
On 12/5/06, Roger Menday <[EMAIL PROTECTED]> wrote: Guillaume Nodet (JIRA) wrote: > [ https://issues.apache.org/activemq/browse/SM-751?page=comments#action_37501 ] > > Guillaume Nodet commented on SM-751: > > > Btw, looking at the patch, I was wondering if it would be interesting to have a multi-level > correlationId, so that we could trace the exchange to its "parent" exchange and from > the parent to the grand-parent and so forth... > Hi, Sorry to drag out an old email, but I was wondering if the proposition above made it into the code ? It would be quite useful to have ... (as I see it when a new correlationid is added into the properties of an exchange which already has one, another property records the parentcorrelationid ... ) Not yet. Would you mind raising another issue for that ? If you have any time to write a patch ... ;) ? thanks, Roger > >> Flow tracing with correlation id >> >> >> Key: SM-751 >> URL: https://issues.apache.org/activemq/browse/SM-751 >> Project: ServiceMix >> Issue Type: Improvement >>Reporter: Gianfranco Boccalon >> Attachments: servicemix-components.zip >> >> >> Add the possibility to trace the flow of the messages inside a Service Assembly. >> For example, if we have a Service Assembly composed of three components, two binding components (call them BC1 and BC2) and a service engine (SE) organized in this sequence BC1->SE->BC2, we need to recognize that the output messages produced by the SE component are related to some messages provided by BC1. >> To do this, we need to add a "process correlation id" to the message exchanges and to modify the used components, to propagate this correlation id in all Message Exchanges sent. >> Enclosed there is the modified code for the following components: >> - HTTP binding component: here I added the code to generate the correlation Id and set it in the Message Exchange >> - Splitter >> - Router (the lightweight component) >> > > -- Cheers, Guillaume Nodet
Re: [jira] Commented: (SM-751) Flow tracing with correlation id
Guillaume Nodet (JIRA) wrote: [ https://issues.apache.org/activemq/browse/SM-751?page=comments#action_37501 ] Guillaume Nodet commented on SM-751: Btw, looking at the patch, I was wondering if it would be interesting to have a multi-level correlationId, so that we could trace the exchange to its "parent" exchange and from the parent to the grand-parent and so forth... Hi, Sorry to drag out an old email, but I was wondering if the proposition above made it into the code ? It would be quite useful to have ... (as I see it when a new correlationid is added into the properties of an exchange which already has one, another property records the parentcorrelationid ... ) ? thanks, Roger Flow tracing with correlation id Key: SM-751 URL: https://issues.apache.org/activemq/browse/SM-751 Project: ServiceMix Issue Type: Improvement Reporter: Gianfranco Boccalon Attachments: servicemix-components.zip Add the possibility to trace the flow of the messages inside a Service Assembly. For example, if we have a Service Assembly composed of three components, two binding components (call them BC1 and BC2) and a service engine (SE) organized in this sequence BC1->SE->BC2, we need to recognize that the output messages produced by the SE component are related to some messages provided by BC1. To do this, we need to add a "process correlation id" to the message exchanges and to modify the used components, to propagate this correlation id in all Message Exchanges sent. Enclosed there is the modified code for the following components: - HTTP binding component: here I added the code to generate the correlation Id and set it in the Message Exchange - Splitter - Router (the lightweight component)
Re: [jira] Commented: (SM-751) Flow tracing with correlation id
Now it works. I'll send the patch asap. Guillaume Nodet (JIRA) ha scritto: [ https://issues.apache.org/activemq/browse/SM-751?page=comments#action_37521 ] Guillaume Nodet commented on SM-751: You need to clean the thread local. In the processExchange method, just do: protected void processExchange(MessageExchange exchange) throws Exception { try { corrId.set(exchange.getProperty("correlationId")); ... put the current code here ... } finally { corrId.set(null); } } This way you should not experience the problem you explained. Flow tracing with correlation id Key: SM-751 URL: https://issues.apache.org/activemq/browse/SM-751 Project: ServiceMix Issue Type: Improvement Reporter: Gianfranco Boccalon Attachments: servicemix-components.zip Add the possibility to trace the flow of the messages inside a Service Assembly. For example, if we have a Service Assembly composed of three components, two binding components (call them BC1 and BC2) and a service engine (SE) organized in this sequence BC1->SE->BC2, we need to recognize that the output messages produced by the SE component are related to some messages provided by BC1. To do this, we need to add a "process correlation id" to the message exchanges and to modify the used components, to propagate this correlation id in all Message Exchanges sent. Enclosed there is the modified code for the following components: - HTTP binding component: here I added the code to generate the correlation Id and set it in the Message Exchange - Splitter - Router (the lightweight component)
[jira] Commented: (SM-751) Flow tracing with correlation id
[ https://issues.apache.org/activemq/browse/SM-751?page=comments#action_37521 ] Guillaume Nodet commented on SM-751: You need to clean the thread local. In the processExchange method, just do: protected void processExchange(MessageExchange exchange) throws Exception { try { corrId.set(exchange.getProperty("correlationId")); ... put the current code here ... } finally { corrId.set(null); } } This way you should not experience the problem you explained. > Flow tracing with correlation id > > > Key: SM-751 > URL: https://issues.apache.org/activemq/browse/SM-751 > Project: ServiceMix > Issue Type: Improvement >Reporter: Gianfranco Boccalon > Attachments: servicemix-components.zip > > > Add the possibility to trace the flow of the messages inside a Service > Assembly. > For example, if we have a Service Assembly composed of three components, two > binding components (call them BC1 and BC2) and a service engine (SE) > organized in this sequence BC1->SE->BC2, we need to recognize that the output > messages produced by the SE component are related to some messages provided > by BC1. > To do this, we need to add a "process correlation id" to the message > exchanges and to modify the used components, to propagate this correlation id > in all Message Exchanges sent. > Enclosed there is the modified code for the following components: > - HTTP binding component: here I added the code to generate the correlation > Id and set it in the Message Exchange > - Splitter > - Router (the lightweight component) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (SM-751) Flow tracing with correlation id
[ https://issues.apache.org/activemq/browse/SM-751?page=comments#action_37507 ] Gianfranco Boccalon commented on SM-751: I'll send you the patch, after tested it. > Flow tracing with correlation id > > > Key: SM-751 > URL: https://issues.apache.org/activemq/browse/SM-751 > Project: ServiceMix > Issue Type: Improvement >Reporter: Gianfranco Boccalon > Attachments: servicemix-components.zip > > > Add the possibility to trace the flow of the messages inside a Service > Assembly. > For example, if we have a Service Assembly composed of three components, two > binding components (call them BC1 and BC2) and a service engine (SE) > organized in this sequence BC1->SE->BC2, we need to recognize that the output > messages produced by the SE component are related to some messages provided > by BC1. > To do this, we need to add a "process correlation id" to the message > exchanges and to modify the used components, to propagate this correlation id > in all Message Exchanges sent. > Enclosed there is the modified code for the following components: > - HTTP binding component: here I added the code to generate the correlation > Id and set it in the Message Exchange > - Splitter > - Router (the lightweight component) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (SM-751) Flow tracing with correlation id
[ https://issues.apache.org/activemq/browse/SM-751?page=comments#action_37501 ] Guillaume Nodet commented on SM-751: Btw, looking at the patch, I was wondering if it would be interesting to have a multi-level correlationId, so that we could trace the exchange to its "parent" exchange and from the parent to the grand-parent and so forth... > Flow tracing with correlation id > > > Key: SM-751 > URL: https://issues.apache.org/activemq/browse/SM-751 > Project: ServiceMix > Issue Type: Improvement >Reporter: Gianfranco Boccalon > Attachments: servicemix-components.zip > > > Add the possibility to trace the flow of the messages inside a Service > Assembly. > For example, if we have a Service Assembly composed of three components, two > binding components (call them BC1 and BC2) and a service engine (SE) > organized in this sequence BC1->SE->BC2, we need to recognize that the output > messages produced by the SE component are related to some messages provided > by BC1. > To do this, we need to add a "process correlation id" to the message > exchanges and to modify the used components, to propagate this correlation id > in all Message Exchanges sent. > Enclosed there is the modified code for the following components: > - HTTP binding component: here I added the code to generate the correlation > Id and set it in the Message Exchange > - Splitter > - Router (the lightweight component) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira