Configuring ServiceControl with remote Error Instance

According to the documentation:

In ServiceControl version 4 and later, a ServiceControl Error instance can be configured with remote instances that are also ServiceControl Error instances or are ServiceControl Audit instances. ServiceControl Audit instances cannot be configured as primary instances.

… I should be able to point out a remote Error Instance. So my primary configuration looks like this

<add key="ServiceControl/RemoteInstances" value="[{&quot;api_uri&quot;:&quot;http://localhost:44444/api/&quot;}, {&quot;api_uri&quot;:&quot;http://localhost:33335/api/&quot;}]" />

… where the first uri is the audit instance that was created at the same time as the primary. The second uri is another error instance. But this shows up as a Usage Error in ServicePulse:

Connection test to Audit Instance(s) failed:
http://localhost:33335/ - retention period of ServiceControl Audit instance is set to 0 days (minimum is 2 days),  hence audit throughput data will not be available.

Connection attempted to the following Audit instances:
http://localhost:44444/
http://localhost:33335/

Did i understand the documentation wrong, that a primary error instance can configure and ingest from another remote error configuration (and it’s audit)?

Hi @carl-berg
Are you attempting to follow the cross region configuration?

A few things that are mentioned in the documentation.

Each region can be managed and controlled via a dedicated ServicePulse.

A new cross-region primary instance is added to allow ServiceInsight to show messages from both regions.

Are you expecting to use one instance of Service Pulse for multiple instances of ServiceControl?
It seems like that may be valid for Service Insight.

Hi @Adam_Wright, thanks for the response.

Yes, i think maybe that’s what i was hoping. I don’t really have the need for a cross region setup, but i do have multiple transports (MSMQ and SqlServer). I was hoping that i could configure one “primary” service control instance that the service pulse talks to. The setup i was trying was this:

- ServiceControl (MSMQ)
- ServiceControl (MSMQ/Audit) 

- ServiceControl (SQL)
- ServiceControl (SQL/Audit)

… where the ServiceControl (MSMQ) had both ServiceControl (MSMQ/Audit) and ServiceControl (SQL) as remote instances, and i connected ServicePulse to ServiceControl (MSMQ). I was hoping i could keep my error queues separate, but maybe that is not possible with a single service pulse?

Hi @carl-berg

Yeah that makes sense, there is a feature that will allow to use one single ServicePulse deployment while configuring the apis via query string that might be useful. Using this feature you could bookmark different environments with different query string parameters.

Also there is an open issue that seems like it is what you may ultimately want, and if you’d like to add anything to that even a thumbs up that may help us when we prioritize working on feature requests.

Thanks for your response @Adam_Wright, the query string trick is good enough for us i think, that makes it easy to set up 2 url’s we can use to monitor each transport separately.