-
Notifications
You must be signed in to change notification settings - Fork 40.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add endpoint support for web-specific stack #10257
Comments
The end goal of the endpoint infrastructure in 2.0 is not to replicate what Spring MVC can do (imagine the work to abstract that to webflux and Jersey). If you have those needs you need to keep your MVC controllers as they are today. We still need to work on letting users define whatever they like using a traditional controller (and with that limitation in mind). Several things:
I am happy to discuss alternative routes but your endpoint needs to be an endpoint in the first place. I would argue that the second example is not an endpoint: where is the JMX feature with a method that takes servlet and response? How do you pass those complex map and objects with JMX for the first case? On our side, we did move Jolokia because we realized it wasn't an endpoint. I believe you should do the same. |
For the security aspect of this, we now have the same problem with our Jolokia support. Whatever is figured out for that will, hopefully, be relevant to Spring Cloud as well. |
Regarding |
This doesn't appear to be moving much. @spencergibb Have you reviewed your current endpoints to determine which of them aren't really endpoints? What, if anything, do you still need to help you to make the transition? |
There are a few. In some cases I changed ids from |
I don’t think we’ll do that. IMO, if something isn’t an endpoint it would be counter-intuitive for disabling all endpoints to disable it. |
At the last team meeting, we discussed the possibility to add a new kind of We discussed the opportunity to introduce a The required features would be:
From a user perspective, this feature makes sense: a user doesn't care if the implementation has to inject Having said that, from our perspective, we would allow to define something as an Endpoint that isn't one:
That last point could be fixed by moving the cache configuration at |
Probably |
@philwebb the remark in my previous comment has not been fully addressed, specifically:
I've just tried with latest |
In spring cloud there are numerous MvcEndpoints that took advantage of the ability of SpringMVC to add arbitrarily complex behaviors to the actuator such as:
/hystrix.stream
), basically access to rawHttpServletRequest
&HttpServletResponse
The benefit of having them in actuator is that they aren't part of the main application and can be protected by actuator security.
If we move them to normal endpoints we would lose all of the benefits of actuator (global disabled, security, management port, etc...) that are users are used to.
Thoughts?
The text was updated successfully, but these errors were encountered: