首页 > 解决方案 > 如何为 QuickFIX/J 日志配置 log4j2.xml?

问题描述

我在我的项目中使用 QuickFIX/J 版本 2.1.1 和 log4j2。Quickfix 将日志记录到指定的路径 FileLogPath,并且日志文件不会每天滚动。如何使用 log4j2.xml 配置配置每天存储的日志文件?

标签: javalogginglog4jquickfixj

解决方案


您目前无法通过 QuickFIX/J 配置方式进行配置。

您可以做的是创建自己的日志记录策略:

  1. 创建一个日志工厂类,扩展quickfix.LogFactory
  2. 创建一个日志类,扩展quickfix.Log
  3. 从该quickfix.LogFactory.create( SessionID sessionID )方法中,从您在步骤 2 中创建的类中返回一个日志类实例。记下该quickfix.SessionSettings实例的日志路径和日志心跳等设置。
  4. 在您的日志类中(参见第 2 步),委托 log4J 功能进行每日滚动
  5. 创建实例时传递日志工厂类的实例(参见步骤 1)quickfix.Initiator

然后应该使用您在步骤 2 中创建的记录器类的实例来完成记录。

注意 QuickFIX/J 是开源的;您可以随时查看实现quickfix.LogFactoryquickfix.Log获取一些示例。例如quickfix.FileLogFactoryquickfix.FileLog


推荐阅读