I’m doing a reconnaissance exercise using EGL as part of a Complex Event Processing (CEP) framework. So far as a unit, we’ve proven:
• EGL/RUI can call CICS Web Services
• CICS 4.2 can emit Common Base Event (CBE) XML files and HTTP transport it to Tomcat
• Our Web Services in Tomcat filters, do pattern matching and transforms event data, to produce reports and send notification
• We can store events to files for non-repudiation purpose
• EGL/RUI handler can use a callback function to listen to backend processes
The moving parts appears to be CEP ready. Do you see any obvious reason not to proceed using EGL with this application infrastructure? (see attached)
Pinned topic EGL and Complex Event Processing
Answered question This question has been answered.
Unanswered question This question has not been answered yet.
Updated on 2013-02-22T02:19:06Z at 2013-02-22T02:19:06Z by SystemAdmin
Re: EGL and Complex Event Processing2013-02-21T09:54:26ZThis is the accepted answer. This is the accepted answer.About your last point "EGL/RUI handler can use a callback function to listen to backend processes".
If you mean: EGL/RUI handlers/widgets can use a callback function to receive the answer from a webservice, this is true.
I don't know any option to listen to backend processes (although it would be nice if it would be possible to ask the backend how far the process is when running a backend process).
Re: EGL and Complex Event Processing2013-02-22T02:19:06ZThis is the accepted answer. This is the accepted answer.Yes, I meant EGL/RUI handlers/widgets can use a callback function to receive the answer from a webservice.
We're still in the initial stages on trying the Event-Driven approach. What's promising though is, CICS Event Processing framework appears to have XML event headers (i.e., cics:context-info tag) to keep track of activity sequence, network and module origins.
<?xml version= "1.0"?> <cics:event xmlns:cics= "http://www.ibm.com/xmlns/prod/cics/events/CBE"> <cics:context-info> <cics:eventname>Query</cics:eventname> <cics:usertag>V001</cics:usertag> <cics:networkapplid>MYORG.CICSPROD @@@@</cics:networkapplid> <cics:timestamp>2013-02-05T20:51:51.976+00:00</cics:timestamp> <cics:bindingname>SampleHTTP</cics:bindingname> <cics:capturespecname>PROGRAMSTART</cics:capturespecname> <cics:UOWid>160DD5C3D6D44BE2D4E9C1F0F0F0F2E10A9CC48E98000100000000</cics:UOWid> </cics:context-info> <cics:payload-data> <data:payload xmlns:data= "http://www.ibm.com/prod/cics/V001/Query"> <data:CUSTNO>000005</data:CUSTNO> <data:STOCKID>000005</data:STOCKID> </data:payload> </cics:payload-data> </cics:event>
So in a way if we can define exactly what milestone events should occur, there's a good possibility to infer how far each unit-of-work has gone thru the wire. There are available software products that are able to consume CBE-formatted XML, but it's still too early to consider. For now, we reckon EGL can do the required job.