Ordina-Group / microservices-dashboard

Dashboard for visualizing Spring Boot microservices and the components they link to.
Apache License 2.0
411 stars 71 forks source link

Integrate with Spring Boot Admin #108

Open andreasevers opened 8 years ago

andreasevers commented 8 years ago

Make a visual link between the microservices and their Spring Boot Admin counterpart.

Optionally have both applications in the same Spring Boot app by using two annotations at the same time.

TYsewyn commented 8 years ago

It appears that Spring Boot Admin and the dashboard both are using the root as context path. We could add a dashboard specific configuration property to change the context path so that the dashboard is running on its own servlet and both applications can run next to each other.

andreasevers commented 8 years ago

That would be necessary indeed.

joshiste commented 8 years ago

I really like the idea.

joshiste commented 8 years ago

@andreasevers Unfortunately until now I couldn't spent time to have a deeper look at your dashboard.

I wonder what are the parts that could to be integrated?

joshiste commented 8 years ago

It appears that Spring Boot Admin and the dashboard both are using the root as context path.

@TYsewyn SBA doesn't register it's own dispatcherServlet. Instead it just registers some handler mappings which can be prefixed so that it is possible to run SBA not on root.

andreasevers commented 8 years ago

Running both in the same container could get tricky indeed, and having them as separate apps wouldn't really be a problem in a microservices architecture.

We could start with some simple links, and move on from there. Loading the dashboard visually inside the SBA would probably be not so hard to achieve since it's responsive and has a pretty simple UI. I'm normally not a fan of iframes but something along those lines should already give some nice results, benefitting both projects.

More integration isn't entirely clear to me yet. SBA has a more advanced way of dealing with services, as there is a client component sending more specific information. Microservices Dashboard only observes the services without needing a change on the services themselves. That simplifies the internals of the MD as it doesn't need a reverse proxy and so on.

joshiste commented 8 years ago

having them as separate apps wouldn't really be a problem in a microservices architecture.

I agree.

We could start with some simple links, and move on from there.

yep

I'm normally not a fan of iframes but something along those lines should already give some nice results, benefitting both projects.

Me neither. I think there is a neat javascript lib which can load foreign html into my page (and also does some nice tricks to crop out the right bits of html) - like an ESI / SSI but only in the browser.

joshiste commented 8 years ago

SBA has a more advanced way of dealing with services, as there is a client component sending more specific information. Microservices Dashboard only observes the services without needing a change on the services themselves.

Imho they both nicely complement each other. As the first one focuses on single services and the latter one on the interaction between them. Or am I wrong?

joshiste commented 8 years ago

Is there any way how you deal with security? Couldn't find anything on that in your reference guide...

andreasevers commented 8 years ago

Imho they both nicely complement each other. As the first one focuses on single services and the latter one on the interaction between them. Or am I wrong?

That was our general idea when we started off with this project. SBA already existed so we didn't want to duplicate any functionality but really fill in the gaps. We want to focus on the links between microservices and refer for specific microservice details to the SBA application.

Is there anyway how you deal with security? Couldn't find anything on that in your reference guide...

Securing the dashboard itself with spring-security is straight-forward but fetching secured information hasn't been our priority yet. Definitely something on the roadmap.

joshiste commented 8 years ago

Securing the dashboard itself with spring-security is straight-forward but fetching secured information hasn't been our priority yet. Definitely something on the roadmap.

This is how SBA does it too.

But since it looks like spring-boot will enable security by default for the endpoints with 1.5 (even when spring-security isn't included) it's on my todo list.

cforce commented 7 years ago

Still hoping this will happen soon

TYsewyn commented 5 years ago

This has been put on the roadmap for 2.x. If everything goes according to plan both SBA and the dashboard server could be added to the same application from the start of this major release.

TYsewyn commented 5 years ago

Moved because of https://github.com/ordina-jworks/microservices-dashboard-server/issues/82