Failover Events

I registered for the NewEventIndication and set up a failover recording server for Corporate 2017 R1 system. When shutting down the recorder service, the failover server starts running as expected (in hot standby as well as in failover group setting tested).

I am getting several recorder “not responding”/“responding” events, but i am missing the “failover started”/“failover stopped” messages. How to get them? Is some configuration needed?

Regards Michael

You can use this event instead -

MIP Environment: VideoOS.Platform.Messaging.MessageId.Server Class Reference

const String VideoOS.Platform.Messaging.MessageId.Server.RecorderFQIDChangedIndication = “Server.RecorderFQIDChangedIndication”

This message ID is used when a failover has occurred in a Corporate system. The Message.RelatedFQID defines the recorder that has an updated address (WebServerUri). Note: This message is enabled by the VideoOS.Platform.SDK.Environment.Login() method is called.

Thanks Bo, but what about the events described in the Administrator Manual for Advanced VMS 2017 R1 on page 174:

Failover Started: Occurs when a failover recording server takes over from a recording server. See About failover recording servers (on page 89).

Failover Stopped: Occurs when a recording server becomes available again, and can take over from a failover recording server.

How to receive them?

I will try to experiment myself. I wonder if the message is sent by the recording server while the Event Server is itself switching from recording server to recording server.

It should also be possible to get the awareness of the failover by subscribing to System.LocalConfigurationChangedIndication.

Failover started and Failover Stopped is never signalled outside the Management Server so they will not be part of the messages coming from the Event Server on NewEventsIndication.

It would be interesting to hear if you can solve the need by use of any of the alternatives I have mentioned? Please let me know.

I have tried both of the alternatives, but for each of them there are several messages created and therefore its hard to determine what was the cause of the indication.

For example RecorderFQIDChanged is called 3 times when failover is starting. This is the order of events in my test scenario(1 recording server, 1 failover server in failover group) where the recorder server is stopped and then started again:

  1. [NewEventsIndication]: Recording Server not responding

  2. [RecorderFQIDChangedInd.] Recording Server

  3. [RecorderFQIDChangedInd.] Recording Server

  4. [RecorderFQIDChangedInd.] Failover Server

  5. [NewEventsIndication]: Recording Server responding

  6. [RecorderFQIDChangedInd.] Recording Server

  7. [RecorderFQIDChangedInd.] Recording Server

  8. [RecorderFQIDChangedInd.] Failover Server

  9. [NewEventsIndication]: Recording Server not responding

10. [NewEventsIndication]: Recording Server responding

I don’t see this as a reliable way to detect failover, especially if there are more recording/failover servers. How are single messages related to each other

I cannot reproduce: I get one RecorderFQIDChangedIndication and the Message.RelatedFQID has the expected content.

>>MIP Environment: VideoOS.Platform.Messaging.MessageId.Server Class Reference

The Message.RelatedFQID defines the recorder that has an updated address (WebServerUri).

Now I see another issue, you get signalled that a recording server changed the FQID, it does not tell you if it went into or out of failover.

Maybe reading the System logs could be used to clarify.

Also, It seems to me that the understanding of whether all failovers will be in use or not is not directly acchievable from these events.