在spring中使用DefaultJmsListenerContainerFactory
订阅消息和使用故障转移activemq传输的camel时,我不断收到INFO消息。
2016-08-25 15:00:07,235 [ActiveMQ Task-1] INFO transport.failover.FailoverTransport Successfully connected to tcp://localhost:61616
2016-08-25 15:00:08,265 [ActiveMQ Task-1] INFO transport.failover.FailoverTransport Successfully connected to tcp://localhost:61616
2016-08-25 15:00:08,265 [ActiveMQ Task-1] INFO transport.failover.FailoverTransport Successfully connected to tcp://localhost:61616
2016-08-25 15:00:09,296 [ActiveMQ Task-1] INFO transport.failover.FailoverTransport Successfully connected to tcp://localhost:61616
2016-08-25 15:00:09,328 [ActiveMQ Task-1] INFO transport.failover.FailoverTransport Successfully connected to tcp://localhost:61616
2016-08-25 15:00:10,299 [ActiveMQ Task-1] INFO transport.failover.FailoverTransport Successfully connected to tcp://localhost:61616
2016-08-25 15:00:10,346 [ActiveMQ Task-1] INFO transport.failover.FailoverTransport Successfully connected to tcp://localhost:61616
2016-08-25 15:00:11,318 [ActiveMQ Task-1] INFO transport.failover.FailoverTransport Successfully connected to tcp://localhost:61616
是否可以在控制台上禁用此INFO消息,或者是否有任何时间间隔在控制台上打印此消息?
我试过使用一些ActiveMQ传输连接选项,但它没有帮助我。
答案 0 :(得分:3)
首先我想到你可以使用故障转移参数,例如:http://activemq.apache.org/failover-transport-reference.html
答案 1 :(得分:0)
我们发现使用SpringBoot和ActiveMQ时默认情况下禁用连接池。我们在application.yml
文件中设置以下属性以启用池:
spring.activemq.pool.enabled: true
将日志级别设置为WARN
只是掩盖了问题,因为它仍然会丢弃并在后台重新建立连接。
答案 2 :(得分:0)
从ActiveMQ论坛:
PooledConnectionFactory的默认idleTimeout只有30 秒。物理连接以循环方式借用。 因此,如果应用程序花费30秒以上的时间来循环浏览5 连接,您将开始观察连接流失,这似乎与 您的情况如何。 后续使用之间是否有30秒的间隔 您的方案中的JmsTemplate?
所以解决方案应该是更新连接池的idleTimeout。