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
