dotnetcore / CAP

Distributed transaction solution in micro-service base on eventually consistency, also an eventbus with Outbox pattern
http://cap.dotnetcore.xyz
MIT License
6.61k stars 1.28k forks source link

Cap-dashboard empty using dynamic subscribers #1549

Closed carlosxjose closed 1 month ago

carlosxjose commented 2 months ago

I read you don't support dynamic subscribers but if somebody can help with the following issue i would appreciate it. I configured all the settings referring to this discussion; https://github.com/dotnetcore/CAP/issues/1151

Cap 8.2.0-preview-234883029 with SQLServer for storage.

Local subscriber A capOptions.DefaultGroupName = "LOCAL_A";

Cloud suscriber B capOptions.DefaultGroupName = "CLOUD_B";

Everything is working as it should except if using Azure Service Bus in subscriber Local_A, I can't see the published or received messages or subscribers at the dashboard, however if I switch to RabbitMQ I can see all the information from the dashboard... See attached pictures.

Transport configuration: image

Local subscriber running with Azure Service Bus

Subscribers image

Received image

Local subscriber running with RabbitMQ

Subscribers image

Received image

Thanks!!!

carlosxjose commented 1 month ago

Finally we have decided to migrate to RabbitMQ cloud based... Which allow us to see all the data in the dashboard still using the dynamic subscribers. If any advice with another cloud based option beside Azure Service Bus I would be thankful.

carlosxjose commented 3 weeks ago

After some more research finally found the solution;

1-When you add an application to an existing one as an Alias on IIS, the APIS from CAP Dashboard require the PathBase to define the right URI for internal API request otherwise it will return a 404... At first we though was a transport exception but at last was just an API data exception;

capOptions.UseDashboard(d => { d.PathBase = "/Alias"; d.PathMatch = "/cap-dashboard"; });

2-This is the example that fix the case if you require to add a cap application to an existing one for local hosting in IIS, for this example the URI should be http://localhost/Alias/cap-dashboard

For us was a bit tricky to resolve this things because on the local development everything is working as specked nor when you go to production with different environments...

Thanks for all your support!