public class IntegrationManagementConfigurer extends Object implements SmartInitializingSingleton, ApplicationContextAware, BeanNameAware, BeanPostProcessor, ApplicationListener<ContextClosedEvent>
IntegrationManagement
.
Configures counts, stats, logging for all (or selected) components.Modifier and Type | Field and Description |
---|---|
static String |
MANAGEMENT_CONFIGURER_NAME
Bean name of the configurer.
|
Constructor and Description |
---|
IntegrationManagementConfigurer() |
Modifier and Type | Method and Description |
---|---|
void |
afterSingletonsInstantiated() |
void |
onApplicationEvent(ContextClosedEvent event) |
Object |
postProcessAfterInitialization(Object bean,
String name) |
void |
setApplicationContext(ApplicationContext applicationContext) |
void |
setBeanName(String name) |
void |
setDefaultLoggingEnabled(boolean defaultLoggingEnabled)
Disable all logging in the normal message flow in framework components.
|
void |
setMetricsCaptor(MetricsCaptor metricsCaptor) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
postProcessBeforeInitialization
forPayload
public static final String MANAGEMENT_CONFIGURER_NAME
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException
setApplicationContext
in interface ApplicationContextAware
BeansException
public void setBeanName(String name)
setBeanName
in interface BeanNameAware
public void setDefaultLoggingEnabled(boolean defaultLoggingEnabled)
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)
.
defaultLoggingEnabled
- defaults to true.public void setMetricsCaptor(@Nullable MetricsCaptor metricsCaptor)
public void afterSingletonsInstantiated()
afterSingletonsInstantiated
in interface SmartInitializingSingleton
public Object postProcessAfterInitialization(Object bean, String name) throws BeansException
postProcessAfterInitialization
in interface BeanPostProcessor
BeansException
public void onApplicationEvent(ContextClosedEvent event)
onApplicationEvent
in interface ApplicationListener<ContextClosedEvent>