Prior to this commit, we set in gh-37388 the ObservationRegistry on the auto-configured JmsTemplate bean. This enables observations and context propagation when sending JMS messages. This commit applies the same to the `DefaultJmsListenerContainerFactory` and the `DefaultJmsListenerContainerFactoryConfigurer`, in order to enable observations on `@JmsListener` annotated methods. This commit also refactors the support implemented in gh-37388 to avoid relying on a bean post processor and instead set the observation registry directly in the main auto-configuration: while Micrometer core is an actuator-only dependency, Micrometer Observation API is a compile dependnecy for spring-jms itself and there is no need to separate concerns there. Fixes gh-38613
178 lines
6.0 KiB
XML
178 lines
6.0 KiB
XML
<?xml version="1.0"?>
|
|
<!DOCTYPE import-control PUBLIC "-//Checkstyle//DTD ImportControl Configuration 1.4//EN" "https://checkstyle.org/dtds/import_control_1_4.dtd">
|
|
<import-control pkg="org.springframework.boot">
|
|
<allow pkg="io.micrometer.observation" />
|
|
<disallow pkg="io.micrometer" />
|
|
<disallow pkg="org.springframework.lang" />
|
|
<allow pkg=".*" regex="true" />
|
|
<subpackage name="autoconfigure">
|
|
<disallow class="org.springframework.boot.autoconfigure.jdbc.DataSourceProperties"/>
|
|
<subpackage name="web">
|
|
<allow pkg="org.springframework.boot.web.server" />
|
|
<allow pkg="org.springframework.boot.web.servlet.server" />
|
|
<disallow pkg="org.springframework.boot.web" />
|
|
<disallow pkg="org.springframework.web.servlet" />
|
|
<disallow pkg="org.springframework.web.reactive" />
|
|
<disallow pkg="jakarta.servlet" />
|
|
<subpackage name="client">
|
|
<allow pkg="org.springframework.boot.web.client" />
|
|
</subpackage>
|
|
<subpackage name="embedded">
|
|
<allow pkg="org.springframework.boot.web.embedded" />
|
|
</subpackage>
|
|
<subpackage name="servlet">
|
|
<allow pkg="jakarta.servlet" />
|
|
<allow pkg="org.springframework.boot.web.embedded" />
|
|
<allow pkg="org.springframework.boot.web.servlet" />
|
|
<allow pkg="org.springframework.web.servlet" />
|
|
<subpackage name="error">
|
|
<allow pkg="org.springframework.boot.web.error" />
|
|
</subpackage>
|
|
</subpackage>
|
|
<subpackage name="reactive">
|
|
<allow pkg="org.springframework.boot.web.codec" />
|
|
<allow pkg="org.springframework.boot.web.embedded" />
|
|
<allow pkg="org.springframework.boot.web.reactive" />
|
|
<allow pkg="org.springframework.web.reactive" />
|
|
<subpackage name="error">
|
|
<allow pkg="org.springframework.boot.web.error" />
|
|
</subpackage>
|
|
</subpackage>
|
|
</subpackage>
|
|
</subpackage>
|
|
|
|
<subpackage name="actuate">
|
|
<allow pkg="io.micrometer" />
|
|
<!-- Endpoint infrastructure -->
|
|
<subpackage name="endpoint">
|
|
<disallow pkg="org.springframework.http" />
|
|
<disallow pkg="org.springframework.web" />
|
|
<subpackage name="invoke">
|
|
<subpackage name="reflect">
|
|
<file name="OperationMethodParameter">
|
|
<allow pkg="org.springframework.lang"/>
|
|
</file>
|
|
</subpackage>
|
|
</subpackage>
|
|
<subpackage name="web">
|
|
<allow pkg="org.springframework.http" />
|
|
<allow pkg="org.springframework.web" />
|
|
<subpackage name="servlet">
|
|
<disallow pkg="org.springframework.web.reactive" />
|
|
</subpackage>
|
|
<subpackage name="reactive">
|
|
<disallow pkg="org.springframework.web.servlet" />
|
|
</subpackage>
|
|
</subpackage>
|
|
</subpackage>
|
|
<file name=".*Endpoint(WebExtension)?" regex="true">
|
|
<allow pkg="org.springframework.lang"/>
|
|
</file>
|
|
</subpackage>
|
|
|
|
<subpackage name="docs">
|
|
<allow pkg="io.micrometer" />
|
|
</subpackage>
|
|
|
|
<!-- Logging -->
|
|
<subpackage name="logging">
|
|
<allow pkg="org.springframework.boot.context.properties.bind" />
|
|
<disallow pkg="org.springframework.context" />
|
|
<disallow pkg="org.springframework.boot.context" />
|
|
</subpackage>
|
|
|
|
<subpackage name="test">
|
|
<subpackage name="autoconfigure">
|
|
<subpackage name="actuate">
|
|
<allow pkg="io.micrometer" />
|
|
</subpackage>
|
|
</subpackage>
|
|
</subpackage>
|
|
|
|
<!-- Web related concerns -->
|
|
<subpackage name="web">
|
|
|
|
<!-- Lock things down -->
|
|
<disallow pkg="org.springframework.boot.web" />
|
|
<disallow pkg="org.springframework.web.servlet" />
|
|
<disallow pkg="jakarta.servlet" />
|
|
|
|
<!-- Common -->
|
|
<subpackage name="client">
|
|
</subpackage>
|
|
<subpackage name="server">
|
|
<disallow pkg="org.springframework.context" />
|
|
<allow pkg="org.springframework.boot.web.server"/>
|
|
<subpackage name="context">
|
|
<allow pkg="org.springframework.context" />
|
|
</subpackage>
|
|
</subpackage>
|
|
<subpackage name="context">
|
|
<allow pkg="org.springframework.boot.web.server" />
|
|
</subpackage>
|
|
|
|
<!-- Servlet -->
|
|
<subpackage name="servlet">
|
|
<allow pkg="jakarta.servlet" />
|
|
<subpackage name="context">
|
|
<allow pkg="org.springframework.boot.web.context" />
|
|
<allow pkg="org.springframework.boot.web.server" />
|
|
<allow pkg="org.springframework.boot.web.servlet.server" />
|
|
<allow pkg="org.springframework.boot.web.servlet" />
|
|
</subpackage>
|
|
<subpackage name="filter">
|
|
<allow pkg="jakarta.servlet" />
|
|
<allow pkg="org.springframework.boot.web.servlet" />
|
|
</subpackage>
|
|
<subpackage name="server">
|
|
<disallow pkg="org.springframework.context" />
|
|
<allow pkg="org.springframework.boot.web.server" />
|
|
<allow pkg="org.springframework.boot.web.servlet" />
|
|
</subpackage>
|
|
<subpackage name="support">
|
|
<allow pkg="jakarta.servlet" />
|
|
<allow pkg="org.springframework.boot.web.servlet" />
|
|
<allow pkg="org.springframework.boot.web.server" />
|
|
</subpackage>
|
|
<subpackage name="view">
|
|
<allow pkg="org.springframework.web.servlet" />
|
|
</subpackage>
|
|
<subpackage name="error">
|
|
<allow pkg="org.springframework.boot.web.error" />
|
|
<allow pkg="org.springframework.web.servlet" />
|
|
</subpackage>
|
|
</subpackage>
|
|
|
|
<!-- Reactive -->
|
|
<subpackage name="reactive">
|
|
<subpackage name="context">
|
|
<allow pkg="org.springframework.boot.web.context" />
|
|
<allow pkg="org.springframework.boot.web.server" />
|
|
<allow pkg="org.springframework.boot.web.reactive.server" />
|
|
</subpackage>
|
|
<subpackage name="error">
|
|
<allow pkg="org.springframework.boot.web.error" />
|
|
</subpackage>
|
|
<subpackage name="server">
|
|
<allow pkg="org.springframework.boot.web.server" />
|
|
<disallow pkg="org.springframework.context" />
|
|
</subpackage>
|
|
<subpackage name="result">
|
|
<subpackage name="view">
|
|
<allow pkg="org.springframework.boot.web.reactive.result.view" />
|
|
</subpackage>
|
|
</subpackage>
|
|
</subpackage>
|
|
|
|
<!-- Embedded Servers -->
|
|
<subpackage name="embedded">
|
|
<allow pkg="jakarta.servlet" />
|
|
<allow pkg="org.springframework.boot.web.server" />
|
|
<allow pkg="org.springframework.boot.web.servlet" />
|
|
<allow pkg="org.springframework.boot.web.servlet.server" />
|
|
<allow pkg="org.springframework.boot.web.reactive.server" />
|
|
</subpackage>
|
|
|
|
</subpackage>
|
|
</import-control>
|