For example, when the jms:listener-container is up but some how the queue listener did not pick up
That should not happen there is the equivalent of a while(true) in the container looping and waiting for a message. If you set your logging to TRACE your log will be flooded with the messages from this.
Typically stopping, starting and restarting would be a good job for JMX. If you take a look at Spring Integration all of these niceties are there for you out of the box. Also with Spring integration you can alternatively autowire the adapter into a service which you could access from a UI and call the lifecycle events on it.