Status reporting events
Status reporting uses the standard com.apama.statusreport event interface, defined in the StatusSupport.mon file. Heartbeats and status messages between the service monitors and the transport/codec are managed by the IAFStatusManager.mon service monitor. Both of these monitors must be injected in the order listed in the "Monitor injection order" section.
Applications should subscribe to status by sending the following event to the correlator:
com.apama.statusreport.SubscribeStatus("BVMF_UMDF",<object>,"",<connection>)
Where connection is the connection name as used in the SessionConfiguration event, and object is Adapter, Channel, or SecurityDefinition.
subscriptions where all fields are "wildcards" are also supported:
com.apama.statusreport.SubscribeStatus("", "", "", "")
In this case, the subscriber will receive all status reports from the BVMF_UMDF adapter as well as every other status-reporting entity in the system. A com.apama.statusreport.UnsubscribeStatus event with the same field values can be used to cancel a previous status subscription.
Status reports are routed as com.apama.statusreport.Status objects, with the "serviceId", "object" and "connection" fields set as above for subscriptions. The reported status is as follows:
Adapter object. This object reports on the overall state of the connection between the feed, transport and service monitors. If the "available" flag is true, the adapter is "up", in contact with the feed and ready to handle requests. The value "Connected" will appear in the "summaries" field in this case. Otherwise, the adapter is unavailable and clients should wait until it becomes available before trying to use it.
Channel object. This object reports on the status of an individual market data channel, based on the content of any SecurityStatus messages received from the feed for that channel (as distinct to the status of a security). The "summaries" sequence will contain a single element giving the status of the channel, and the "available" field will be true if the status indicates that the channel is "ready to trade".
SecurityDefinition object. This object reports on the status of a security definition channel handler. The following values appear in the "summaries" sequence:
Load Started
Load Completed
Load Failed
Refresh Started
Refresh Completed
Refresh Failed
Save Started
Save Completed
Save Failed
Ready
The "available" field will be true if the channel handler is ready to handle lookup requests for security definition records.