-
Notifications
You must be signed in to change notification settings - Fork 629
Description
Describe the issue
I'm trying to get KinesisMessageDrivenChannelAdapter exposed on JMX so that I get access to operations that manipulate the checkpoints (resetCheckpointForShardToSequenceNumber etc.). But all I can see are just the channel beans (null, error, functionRouter and one defined for StreamBridge).
I have spring-integration-jmx added, I have the @EnableIntegrationMBeanExport on my configuration and I can see the IntegrationMbeansExporter afterSingletonsInstantiated getting called but at that time the KinesisMessageDrivenChannelAdapter hasn't been created yet so it's not getting exported. Is there a different way of handling this?
To Reproduce
Steps to reproduce the behavior:
- Go to '...'
- Click on '....'
- Scroll down to '....'
- See error
Version of the framework
Spring Cloud Stream 4.0.5
Spring Integration AWS 3.0.6
Expected behavior
Screenshots
Additional context
Artem's solution is not possible since DefaultBinding.getEndpoint() is package-private. I've also tried using ConsumerEndpointCustomizer but then since KinesisMessageDrivenChannelAdapter is both instance of MessageProducer, Lifecycle and AbstractEndpoint I'm not sure the correct path is chosen in postProcessAfterInitialization.