log4j на основе логгеров: log4cpp против log4cplus против log4cxx

Я хотел бы заменить мой текущий регистратор, который регистрирует собственный код C ++, одним из регистраторов, смоделированных после log4j. Я намерен, чтобы регистратор создал журнал, отформатированный в формате log4j, чтобы его можно было просматривать с помощью средства просмотра Log4View.

Я ищу информацию, такую ​​как плюсы / минусы каждого и различия между ними.

то есть какие-либо известные утечки памяти? Проведено ли тестирование производительности, о котором можно сообщить? какие-либо известные проблемы, которые должны быть приняты во внимание?

9

Решение

Из моего первоначального исследования я обнаружил следующее:

log4cxx:
https://logging.apache.org/log4cxx/

  • в настоящее время проходит Инкубация — нет официального релиза
  • обновление / исправление ошибок один раз за последние 12 лет, последний выпуск был 2008
  • Пользователь может выбрать разные уровни LogLevel — TRACE, DEBUG, INFO, WARN, ERROR и FATAL.
  • иерархические регистраторы
  • можно войти асинхронно
  • поддерживает несколько приложений
  • пользователь может выбрать включить или отключить регистратор
  • журнал может быть отправлен на разные и несколько выходных целей
  • выбранные пользователем форматы вывода
  • хорошо задокументированы
  • лицензируется по лицензии Apache, лицензии с открытым исходным кодом, сертифицированной инициативой Open Source
  • требуется Apache Portable Runtime (APR)

log4cplus:
https://sourceforge.net/projects/log4cplus/

  • регулярные обновления / исправления ошибок — последний выпуск был февраль 2017
  • пользователь может выбрать выбрать разные уровни LogLevel — TRACE, DEBUG, INFO, WARN, ERROR и FATAL
  • иерархические регистраторы
  • поддерживает многопоточные приложения, но небезопасно для использования с обработчиками асинхронных сигналов
  • выбранный пользователем формат вывода: SimpleLayout, PatternLayout, TTCCLayout
  • поддерживает несколько регистраторов
  • не очень хорошо документировано
  • лицензируется под лицензией Apache V2.0

log4cpp:
https://sourceforge.net/projects/log4cpp/

  • исправления ошибок происходят примерно раз в год, последний выпуск был в августе 2016 г.
  • поддерживает многопоточные приложения
  • четкой документации не существует
  • лицензируется в соответствии с GNU Lesser General Public License (LGPL) начиная с версии 0.2.1, до того как она была выпущена под лицензией GPL.
27

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]