Skip to content

Sample Applications

A companion repository, CritterStackSamples, contains complete, runnable sample solutions that show CritterWatch monitoring real Wolverine fleets across the supported transport and storage combinations. Each one is F5-able: clone the repo, open the solution, and press F5 — a .NET Aspire AppHost provisions every Docker dependency (brokers, databases, emulators), launches the CritterWatch console and the monitored services, and each solution ships an Aspire.Hosting.Testing battery that boots the whole stack and asserts the fleet registers.

The CritterWatch samples live under critterwatch/ in that repository.

The samples

SampleTransportStorageWhat it shows
Fleet.RabbitMqRabbitMQMarten / PostgresThe flagship — a Trip-trio + Incidents fleet over a broker. The template every other fleet copies.
Fleet.AzureServiceBusAzure Service Bus (emulator)Marten / PostgresThe flagship with the transport swapped to Azure Service Bus, including the emulator's pre-declared-topology constraints.
Fleet.PostgresqlQueuesPostgreSQL database queues (broker-free)Marten / PostgresA control channel that is the database — no broker — over the shared-schema Wolverine DB-queue transport.
Fleet.SqlServerQueuesSQL Server database queues (broker-free)Polecat / SQL ServerThe Polecat / SQL Server flavor of the console plus a SQL Server DB-queue control channel.
Fleet.GooglePubSubGoogle Cloud Pub/Sub (emulator)Marten / PostgresThe fleet over Pub/Sub, with a leader-pinned single-consumer control subscription.
WebService.HttpWolverine HTTP transport (broker-free)Marten / PostgresMonitoring a Wolverine HTTP web service where the monitoring link itself rides HTTP.

A shared Aspire.Hosting.Testing harness (Shared/CritterWatch.Samples.Testing) is reused by every solution's Tests/ project, so the "boot the AppHost and assert the routes respond" battery is written once.

Running a sample

Each solution is self-contained — pick one and run it:

bash
git clone https://github.com/JasperFx/CritterStackSamples.git
cd CritterStackSamples/critterwatch/Fleet.RabbitMq

Open the .sln and run the AppHost project (F5). Aspire pulls the required container images, starts the console and the monitored fleet, and exposes the CritterWatch dashboard on the critterwatch resource's HTTP endpoint — open it to watch the fleet register and the message flow light up. To run a solution's smoke battery instead (needs a running Docker daemon):

bash
dotnet test

TIP

The samples consume the published CritterWatch NuGet packages (CritterWatch, Wolverine.CritterWatch, and friends) — never a project reference into this repository — so each one mirrors exactly what a real consumer writes.

Free for read-only monitoring. A commercial license is required for administrative actions and the MCP server.