<rmds.1.ads: Warning: Wed May 06 14:55:34 2020> Output threshold breached for ****** at position *****/****** on host ******** using application 256 on channel 97.<END>
<rmds.1.ads: Info: Wed May 06 14:57:46 2020> User ****** at position ******/******.com on host ******** using application 256 on channel 97 has been disconnected due to an overflow condition.<END>
I don't believe that is currently possible in EMA to check if the event queue is getting too big - I have asked the dev team if this is something they can add to a future version - I will let you know.
In terms of detecting slow consumer scenario, you could check a timestamp field of the received data and if you detect considerable latency then you deduce that the data is being read too slowly and the events are being queued up.
In terms of checking if the application is still logged into the server, you can access the Login stream as demonstrated in examples
example330__Login__Streaming and example333__Login__Streaming__DomainRepresentation
With the above examples the OmmConsumerClient receives messages for the Login stream - so when logged out you can expect to receive a Closed StatusMsg for the Login.
You can also extract the ChannelInformation from the OmmConsumerEvents as mentioned in
In addition to processing the callback faster, you can also use Horizontal Scaling - i.e. multiple OmmConsumer instances on a multi-core CPU - so that the processing workload is split across the cores and illustrated in example410__MarketPrice__HorizontalScaling
A few existing posts on the same issue which should help
Essentially an application is not consuming the data quickly enough and the ADS can only buffer so much for each application - eventually it will disconnect the problem application.
thanks all - Im working through your various suggestions as well as increasing performance. can you confirm, though, when we have a slow consumer, and the ADS runs out of buffer space, what is the sequence of events? Dooes the whole channel go down, or do we just get transient errors of some RICS?