Class BasicActuatorGroup
- All Implemented Interfaces:
jakarta.servlet.Servlet,jakarta.servlet.ServletConfig,Serializable,BasicUniversalConfig,DefaultConfig,DefaultHtmlConfig
Mounts the management endpoints by composing their *Mixin flavors via
@Rest(mixins=...) on top of BasicRestServletGroup:
/healthz,/readyz,/livez—HealthMixin(read-through health view)/threaddump,/heapdump—DumpsMixin(deny-by-default diagnostics)
/info and /loggers are off by default — unlike health, they are not mounted
on the bare group, since InfoMixin discloses the full manifest and LoggersMixin's read side
discloses logger topology, neither behind any auth. Turn either back on (either approach suffices):
- A-la-carte (recommended): mount
InfoMixin/LoggersMixinon a resource you control, e.g. aBasicActuatorGroupsubclass with@Rest(mixins={InfoMixin.class, LoggersMixin.class})— mixins declared on a subclass are additive to the mixins inherited from this class, soHealthMixin/DumpsMixinstay mounted too. - Zero-code: not currently supported —
@Rest(mixins=...)is a compile-time class list, and theRestContext.Builderinjection point that would have let a system property add a mixin at init time was removed prior to 10.0.0 (seeRestInit). Use the a-la-carte subclass above.
Path prefix: defaults to /actuator and is configurable via the juneau.actuator.path
system property (resolved through the standard $S{...} SVL var). Mount the group at a custom prefix
either by setting that property or by subclassing with your own @Rest(path=...).
Composition is convenience, not the only way in: every endpoint remains independently mountable
a-la-carte via its standalone *Mixin/*Resource flavor. The /metrics endpoint is
not assembled here — it lives in the juneau-rest-server-metrics-micrometer module
(which this module does not depend on), so add MetricsMixin a-la-carte when that module is present.
Exposure policy: of the mounted endpoints, health is on; the mutating/sensitive ones
(/threaddump, /heapdump) are deny-by-default via DumpsSettings. No auth provider is
auto-wired (explicit-over-magic).
See Also:
- Since:
- 10.0.0
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.juneau.rest.server.servlet.RestServlet
RestServlet.Builder<R extends RestServlet,SELF extends RestServlet.Builder<R, SELF>>, RestServlet.DefaultBuilder<R extends RestServlet> -
Field Summary
Fields inherited from class jakarta.servlet.http.HttpServlet
LEGACY_DO_HEAD -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class org.apache.juneau.rest.server.servlet.BasicRestServletGroup
addChild, addChild, addChild, getChildResources, removeChild, removeChildMethods inherited from class org.apache.juneau.rest.server.servlet.RestServlet
builder, createAuthenticator, destroy, doLog, getContext, getPath, getPaths, getRequest, getResponse, getRestBuilder, init, log, log, service, setContextMethods inherited from class jakarta.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPatch, doPost, doPut, doTrace, getLastModified, isSensitiveHeader, serviceMethods inherited from class jakarta.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
-
Constructor Details
-
BasicActuatorGroup
public BasicActuatorGroup()
-