(These are multiple, but semi-related questions, I can break them out if necessary. Some I’m 98% sure I know the answer after poking at both the docs and the products, some I’m very unsure about.)
Overall the documentation looks good and comprehensive, esp from the dev perspective. However, from the ops/infra perspective, I’m still unclear on:
-
Is ServicePulse meant to aggregate multiple environments/instances to a single ServicePulse install or is it expected/required to have separate instance of ServicePulse for each environment?
-
What ServiceControl-related operations, if any, (temporarily) block processing of NSB messages? That is, if an SC instance (Error or Audit) is unavailable (service is not running, network issue, whatever), do the regular “real” messages still get sent/processed by whatever client code is running, and the Error/Audit messages pile up in their queues? Said another way: If a production ServiceControl server/vm/instance is down, how bad is it?
-
How the monitoring que/Service Pulse is expected to be set up. We have separate Azure Service Bus Namespaces for each environment (Dev1, Test3, etc), each with the same que names. Seems straightforward. Configuring endpoints for monitoring • ServicePulse • Particular Docs says “Forward audit data to a single audit and error queue that is monitored by a ServiceControl instance.” Is that a single queue for both types, per environment? What’s the default name of the que?
-
The use of the word “Endpoint” is ambiguous: Are these the endpoints (Queues) on whatever transport is in use? Or are they the “clients” where the NSB-specific code is executing on?
-
For the no-downtime Audit upgrades, if there an instance w/ the old RavenDB3 format on one server, can it be live migrated/replaced w/ a new RavenDB5 backed instance on another server created w/ a newer version? (4.26 → 4.31 or even a 5.x?)