Class IntegrationManagementConfigurer
java.lang.Object
org.springframework.integration.config.IntegrationManagementConfigurer
- All Implemented Interfaces:
EventListener,Aware,BeanNameAware,BeanPostProcessor,SmartInitializingSingleton,ApplicationContextAware,ApplicationListener<ContextClosedEvent>
public class IntegrationManagementConfigurer
extends Object
implements SmartInitializingSingleton, ApplicationContextAware, BeanNameAware, BeanPostProcessor, ApplicationListener<ContextClosedEvent>
Configures beans that implement
IntegrationManagement.
Configures logging, MetricsCaptor and ObservationRegistry for all (or selected) components.- Since:
- 4.2
- Author:
- Gary Russell, Artem Bilan, Meherzad Lahewala, Jonathan Pearlin
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidpostProcessAfterInitialization(Object bean, String name) voidsetApplicationContext(ApplicationContext applicationContext) voidsetBeanName(String name) voidsetDefaultLoggingEnabled(boolean defaultLoggingEnabled) Disable all logging in the normal message flow in framework components.voidsetMetricsCaptor(MetricsCaptor metricsCaptor) voidsetObservationPatterns(String... observationPatterns) Set simple patterns for component names matching which has to be instrumented with aObservationRegistry.voidsetObservationRegistry(io.micrometer.observation.ObservationRegistry observationRegistry) Set anObservationRegistryto populate to theIntegrationManagementcomponents in the application context.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.context.ApplicationListener
supportsAsyncExecutionMethods inherited from interface org.springframework.beans.factory.config.BeanPostProcessor
postProcessBeforeInitialization
-
Field Details
-
MANAGEMENT_CONFIGURER_NAME
Bean name of the configurer.- See Also:
-
-
Constructor Details
-
IntegrationManagementConfigurer
public IntegrationManagementConfigurer()
-
-
Method Details
-
setApplicationContext
- Specified by:
setApplicationContextin interfaceApplicationContextAware- Throws:
BeansException
-
setBeanName
- Specified by:
setBeanNamein interfaceBeanNameAware
-
setDefaultLoggingEnabled
public void setDefaultLoggingEnabled(boolean defaultLoggingEnabled) Disable all logging in the normal message flow in framework components. When 'false', such logging will be skipped, regardless of logging level. When 'true', the logging is controlled as normal by the logging subsystem log level configuration.Exception logging (debug or otherwise) is not affected by this setting.
It has been found that in high-volume messaging environments, calls to methods such as
Log.isDebugEnabled()can be quite expensive and account for an inordinate amount of CPU time.Set this to 'false' to disable logging by default in all framework components that implement
IntegrationManagement(channels, message handlers etc.) This turns off logging such as "PreSend on channel", "Received message" etc.After the context is initialized, individual components can have their setting changed by invoking
IntegrationManagement.setLoggingEnabled(boolean).- Parameters:
defaultLoggingEnabled- defaults to true.
-
setMetricsCaptor
-
setObservationRegistry
public void setObservationRegistry(@Nullable io.micrometer.observation.ObservationRegistry observationRegistry) Set anObservationRegistryto populate to theIntegrationManagementcomponents in the application context.- Parameters:
observationRegistry- theObservationRegistryto use.- Since:
- 6.0
-
setObservationPatterns
Set simple patterns for component names matching which has to be instrumented with aObservationRegistry.- Parameters:
observationPatterns- the simple patterns to use.- Since:
- 6.0
- See Also:
-
afterSingletonsInstantiated
public void afterSingletonsInstantiated()- Specified by:
afterSingletonsInstantiatedin interfaceSmartInitializingSingleton
-
postProcessAfterInitialization
- Specified by:
postProcessAfterInitializationin interfaceBeanPostProcessor- Throws:
BeansException
-
onApplicationEvent
- Specified by:
onApplicationEventin interfaceApplicationListener<ContextClosedEvent>
-