[overlord-issues] [JBoss JIRA] (RTGOV-519) Intercept activity from Vertx app interactions and report as activity events

Gary Brown (JIRA) issues at jboss.org
Fri Jul 4 06:43:24 EDT 2014


Gary Brown created RTGOV-519:
--------------------------------

             Summary: Intercept activity from Vertx app interactions and report as activity events
                 Key: RTGOV-519
                 URL: https://issues.jboss.org/browse/RTGOV-519
             Project: RTGov (Run Time Governance)
          Issue Type: Feature Request
      Security Level: Public (Everyone can see)
            Reporter: Gary Brown
            Assignee: Gary Brown
             Fix For: 2.1.0.Final


Vertx has a simple core that is not going to be extended to support any form of intercept mechanism.

The current advice from the vertx team is to create a module that essentially acts as proxy to the real module being used. The problem with this approach is that it does not have any information about the client or service, which are required by rtgov.

Therefore the suggested approach will be to wrap the event bus api with an implementation that can be configured with information about the verticle in which it is being used. Then it can use that information when a message is being sent or received, to create activity events (e.g. request sent/received, response sent/received).

The other issue to consider is how to build ActivityUnits out of the various ActivityType events that may be associated with a business transaction instance. In some environments, the thread can be used to track and accumulate multiple activity events to the same unit. However this approach wouldn't work in Vertx.

One approach to be considered:

The activity events should be reported to an intermediate module responsible for accumulating events into a unit. If a response is expected, then when recording the request it should record the fact, so that the module building the activity unit can determine when invocation scopes have been completed, and therefore the activity unit submitted. (May be more complex than this, but possibly a starting point). The response handler would need to cache a 'replyTo' id that would enable it to submit response events to the same activity unit. This may be controlled on the client side (i.e. event bus proxy), as it may know when it has finished doing its work.

Worst case is that each verticle 'instance' would record its activity in a single activity unit - i.e. request received, and sent messages and received responses, before returning its reply.

Need to investigate whether vertx exposes any form of message ids between verticles - and if not, whether this is something they would consider adding. This would enable correlation of activity across verticles.




--
This message was sent by Atlassian JIRA
(v6.2.6#6264)


More information about the overlord-issues mailing list