Hi All,

I think there's no need to add a totally new adapter in this case cause
AFAIU JMS is the JAVA API and AMQP is the wire protocol. Hence, there
should be a mapping JMS API operation to add AMQP properties, right? If so,
we should try to utilize that feature in the existing JMS adapter IMO.


On Sun, Dec 22, 2013 at 1:18 PM, Lasantha Fernando <[email protected]>wrote:

> Hi Imesh,
>
> +1 for implementing an AMQP output adapter. I think it will be very useful
> to add it as a supported adapter type for CEP.
>
> Will there be any processing happening based on the AMQP properties within
> the CEP? Or is it simply that an AMQP message needs to be sent with
> properties to the AMQP based broker?
>
> Thanks,
> Lasantha
>
>
> On 22 December 2013 10:34, Imesh Gunaratne <[email protected]> wrote:
>
>> Hi All,
>>
>> In Apache Stratos (incubating) 4.0.0 we are using WSO2 CEP for
>> aggregating statistics events sent by load balancers and cartridge agents
>> (agents in VM instances). The aggregated values are used by the Autoscaler
>> for taking autoscaling decisions.
>>
>> Here the events are sent to CEP using the default input adapter (via
>> Thrift) and the aggregated events are sent to an AMQP based message broker
>> using the JMS Output Adapter. Event formatters have been used for defining
>> the formats of the output messages.
>>
>> *A Sample Event Formatter:*
>> <?xml version="1.0" encoding="UTF-8"?>
>> <eventFormatter name="AverageRequestsInflightEventFormatter"
>>   statistics="disable" trace="enable" xmlns="
>> http://wso2.org/carbon/eventformatter";>
>>   <from streamName="average_in_flight_requests" version="1.0.0"/>
>>   <mapping customMapping="enable" type="json">
>>
>> <inline>{"average_in_flight_requests":{"cluster_id":"{{cluster_id}}","network_partition_id":"{{network_partition_id}}","value":"{{count}}"}}</inline>
>>   </mapping>
>>   <to eventAdaptorName="JMSOutputAdaptor" eventAdaptorType="jms">
>>     <property
>> name="transport.jms.Destination">summarized-health-stats</property>
>>   </to>
>> </eventFormatter>
>>
>> The above is a sample event formatter which defines an aggregated event.
>> Similarly there is a collection of events sent by CEP to the message
>> broker. For each event there is an event formatter defined.
>>
>>
>> *The Requirement:*
>> Here there is a requirement to include a set of AMQP Properties [1] in
>> the output message. These properties may include name value pairs specific
>> for each event:
>>
>> *A Sample AMQP Message*
>> Message Properties:
>>
>> event_class_name: 
>> org.apache.stratos.messaging.event.health.stat.AverageInFlightRequests
>>
>> Message Body:
>>
>> {"average_in_flight_requests":{"cluster_id":"{{cluster_id}}","network_partition_id":"{{network_partition_id}}","value":"{{count}}"}}
>>
>>
>> *The Proposal:*
>> As I understood this functionality is not supported by the JMS Output
>> Adapter at the moment and I think it's logical since AMQP features should
>> not be included in JMS Output Adapter.
>>
>> As a solution to this requirement I would like to implement an AMQP
>> Output Adapter on top of the JMS Output Adapter to support this
>> functionality [2]. I will send more implementation design details in
>> another mail as I progress.
>>
>> Really appreciate your thoughts on this.
>>
>> [1]
>> http://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol#Message_format
>> [2] http://docs.wso2.org/display/CEP300/Output+Event+Adaptors
>>
>>
>> Many Thanks
>> --
>> *Imesh Gunaratne*
>> Technical Lead
>> WSO2 Inc: http://wso2.com
>> T: +94 11 214 5345 M: +94 77 374 2057
>> W: http://imesh.gunaratne.org
>> Lean . Enterprise . Middleware
>>
>>
>> _______________________________________________
>> Architecture mailing list
>> [email protected]
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
> *Lasantha Fernando*
> Software Engineer - Data Technologies Team
> WSO2 Inc. http://wso2.com
>
> email: [email protected]
> mobile: (+94) 71 5247551
>
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>


-- 

Thanks & regards,
Nirmal

Senior Software Engineer- Platform Technologies Team, WSO2 Inc.
Mobile: +94715779733
Blog: http://nirmalfdo.blogspot.com/
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to