You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Gianfranco Boccalon <gi...@eng.it> on 2006/08/31 16:29:33 UTC

Flow tracing problem

Hello,
we have the problem of tracing 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.
We studied the listener interface and the provided sample, but the 
listener has no sufficient information to link a messageExchange to a 
previous messageExchange.
The problem is also that the tracing should work for all components, not 
only for the components that we implement.

Any suggestion ?

Thanks
Gianfranco Boccalon



Re: Flow tracing problem

Posted by Guillaume Nodet <gn...@gmail.com>.
Right.
There is no way to do that from the JBI container only, as the container
has no control over what a component do when it receive an exchange.
The only way to do that is thus to have all components to cooperate
together.

Do you see any other way ?

On 8/31/06, Gianfranco Boccalon <gi...@eng.it> wrote:
>
> If I understood right, in this way the components need to be aware of
> this "correlation id", so the "native" ServiceMix components  should use
> and consume this id, but other generic JBI components not. So if these
> generic components are used in a Service Assembly, the tracing may be
> not possible.
>
> It's Right ?
>
> Gianfranco
>
> Guillaume Nodet ha scritto:
> > Yes, I have already thought about that.
> > All components need to be able to share a property, let's call
> > it "global correlation".  When a component receives a message
> > exchange because it is a provider, he should copy this property
> > to other jbi exchanges that it creates, so that later, you will
> > be able to link all those messages together.
> >
> > This has not been implemented yet.  It's not a difficult task, but
> > it impacts all components.  Please raise a JIRA for that.
> > If you want to start implementing it, fell free to provide patches
> > or ask for guidance on the dev list ;)
> >
> >
> > On 8/31/06, Gianfranco Boccalon <gi...@eng.it> wrote:
> >>
> >> Hello,
> >> we have the problem of tracing 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.
> >> We studied the listener interface and the provided sample, but the
> >> listener has no sufficient information to link a messageExchange to a
> >> previous messageExchange.
> >> The problem is also that the tracing should work for all components,
> not
> >> only for the components that we implement.
> >>
> >> Any suggestion ?
> >>
> >> Thanks
> >> Gianfranco Boccalon
> >>
> >>
> >>
> >>
> >
> >
>
>
>


-- 
Cheers,
Guillaume Nodet

Re: Flow tracing problem

Posted by Gianfranco Boccalon <gi...@eng.it>.
If I understood right, in this way the components need to be aware of 
this "correlation id", so the "native" ServiceMix components  should use 
and consume this id, but other generic JBI components not. So if these 
generic components are used in a Service Assembly, the tracing may be 
not possible.

It's Right ?

Gianfranco

Guillaume Nodet ha scritto:
> Yes, I have already thought about that.
> All components need to be able to share a property, let's call
> it "global correlation".  When a component receives a message
> exchange because it is a provider, he should copy this property
> to other jbi exchanges that it creates, so that later, you will
> be able to link all those messages together.
>
> This has not been implemented yet.  It's not a difficult task, but
> it impacts all components.  Please raise a JIRA for that.
> If you want to start implementing it, fell free to provide patches
> or ask for guidance on the dev list ;)
>
>
> On 8/31/06, Gianfranco Boccalon <gi...@eng.it> wrote:
>>
>> Hello,
>> we have the problem of tracing 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.
>> We studied the listener interface and the provided sample, but the
>> listener has no sufficient information to link a messageExchange to a
>> previous messageExchange.
>> The problem is also that the tracing should work for all components, not
>> only for the components that we implement.
>>
>> Any suggestion ?
>>
>> Thanks
>> Gianfranco Boccalon
>>
>>
>>
>>
>
>


Re: Flow tracing problem

Posted by Guillaume Nodet <gn...@gmail.com>.
Yes, I have already thought about that.
All components need to be able to share a property, let's call
it "global correlation".  When a component receives a message
exchange because it is a provider, he should copy this property
to other jbi exchanges that it creates, so that later, you will
be able to link all those messages together.

This has not been implemented yet.  It's not a difficult task, but
it impacts all components.  Please raise a JIRA for that.
If you want to start implementing it, fell free to provide patches
or ask for guidance on the dev list ;)


On 8/31/06, Gianfranco Boccalon <gi...@eng.it> wrote:
>
> Hello,
> we have the problem of tracing 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.
> We studied the listener interface and the provided sample, but the
> listener has no sufficient information to link a messageExchange to a
> previous messageExchange.
> The problem is also that the tracing should work for all components, not
> only for the components that we implement.
>
> Any suggestion ?
>
> Thanks
> Gianfranco Boccalon
>
>
>
>


-- 
Cheers,
Guillaume Nodet