Solace:如何关闭从 solace java api 发送到 std err 的信息语句

Solace: How to switch off the info statements sent to std err from solace java api

当前在 运行 安慰客户时看到以下几行。

10-Feb-2016 11:14:13 com.solacesystems.jcsmp.protocol.impl.TcpClientChannel    call
INFO: Connecting to host 'orig=myhost.com, host=solacehost.com, port=55555'  (host 1 of 1, smfclient 4, attempt 1 of 1, this_host_attempt: 1 of 1)

查看 JCSMPProperties class 来控制它,但没有成功。

The Solace Java API 使用 Jakarta Commons Logging 来支持不同的日志记录 框架,例如用于应用程序日志记录的 log4j 或 java.util.logging 框架。

您需要确定您的应用程序使用的确切日志记录框架,并调整 Solace 的日志级别 API。

例如,如果您的应用程序正在使用 log4j,您可以编辑 log4j.properties 文件以将 Solace API 的日志级别设置为 WARN,以隐藏那些信息级别的日志。

log4j.appender.A1=org.apache.log4j.ConsoleAppender log4j.logger.com.solacesystems.jcsmp=WARN, A1

找到了解决方案,安慰 API 使用了各种日志库,我的项目有 commons-logging。在知道使用

之后,抑制日志输出非常简单
static {
      System.setProperty("org.apache.commons.logging.Log",
                         "org.apache.commons.logging.impl.NoOpLog");
   }