来自Ignite节点中第三方代码的Log4j:未找到配置文件

来自Ignite节点中第三方代码的Log4j:未找到配置文件,ignite,Ignite,我从主节点(以编程方式运行)提供配置文件(通过-Dlog4j.configurationFile)。主节点分发批处理作业(10个类似任务)。该任务涉及使用以下log4j行的第三方代码: final org.apache.logging.log4j.Logger lgr = LogManager.getLogger(Command.class). 主节点没有问题,工作正常,但其他节点(通过bin/ignite.bat启动)显示如下: 错误状态记录器未找到log4j2配置文件。使用默认值 配置:仅

我从主节点(以编程方式运行)提供配置文件(通过-Dlog4j.configurationFile)。主节点分发批处理作业(10个类似任务)。该任务涉及使用以下log4j行的第三方代码:

final org.apache.logging.log4j.Logger lgr = LogManager.getLogger(Command.class).
主节点没有问题,工作正常,但其他节点(通过bin/ignite.bat启动)显示如下:

错误状态记录器未找到log4j2配置文件。使用默认值 配置:仅将错误记录到控制台


通过在节点配置中添加以下内容,在使用ignite.bat启动的其他节点上设置Log4j logger

          <property name="gridLogger">
              <bean class="org.apache.ignite.logger.log4j.Log4JLogger">
                  <constructor-arg type="java.lang.String" value="config/ignite-log4j.xml"/>
              </bean>
          </property>


还要确保“config/ignite-log4j.xml”位于Apache发行版中。最后,别忘了将“ignite-log4j”库从“libs/optional”文件夹移到“libs”文件夹。

设置gridLogger属性会重置使用它之前设置的任何log4j2配置。