Development Tip

C ++ 로깅 프레임 워크 제안

yourdevel 2020. 12. 27. 20:12
반응형

C ++ 로깅 프레임 워크 제안


다음 기능을 가진 C ++ 로깅 프레임 워크를 찾고 있습니다.

  • 로그에는 심각도 (정보, 경고, 오류, 위험 등)가 있습니다.
  • 로그는 모듈 이름으로 태그가 지정됩니다.
  • 프레임 워크에는 실제로 파일에 기록 할 모듈과 로그를 파일에 기록하는 데 필요한 최소 심각도를 구성하는 UI (또는 CLI)가 있습니다.
  • 모듈, 심각도, 모듈 이름, 오류 이름 등을 검색 할 수있는 뷰어가 있습니다.

UI 또는 CLI의 구성에 대해 잘 모르겠습니다. 저는이 두 가지 로깅 프레임 워크를 한 지점 또는 다른 지점에서 사용했습니다.

https://sourceforge.net/projects/log4cplus/
https://logging.apache.org/log4cxx/index.html

손으로 또는 빠르고 더러운 GUI 또는 CLI 앱을 통해 편집 할 수있는 구성 파일을 기반으로 로깅을 구동하는 것은 그리 어렵지 않습니다. 동적으로 조정하기가 조금 더 어려울 수 있지만 나쁘지는 않습니다.

최신 정보:

제안 된 Boost.Log가 이제 안정적인 릴리스 인 Boost 1.54에 있는 것 같습니다 . 이미 Boost를 사용하고 있다면 내가 살펴볼 것입니다.


뷰어는 없지만 pantheios를 사용해 볼 수 있습니다. 나는 거의 1 년 동안 그것을 사용하고 있으며 그것에 매우 만족합니다.


완전히 형식이 안전하고 매우 효율적 이므로 Pantheios를 강력히 제안 합니다 . 올바른 "프론트 엔드"와 "백 엔드"를 선택하는 데있어 사용자에게 약간의 작업을 부과하지만 일단 작동하면 수정하고 잊어 버릴 수 있습니다.

그것은 정교한 로깅 기능을 제공하지 않습니다 - 예를 들어, 파일 압연 -하지만의 디자인에 의해를 가 더 많은 기능 (그러나 가난한 성능 / 유형 안전)가 다른 로깅 라이브러리와 함께 사용하기위한 있기 때문에.


성능에 관심이 있다면 Pantheios 를 확인하는 것이 좋습니다 . 특히 매우 높은 성능 을 제공하며 다른 로깅 라이브러리와 함께 사용할 수 있습니다. 로깅 라이브러리 (예 : log4cxx)와 애플리케이션 코드 사이에서 효율적이고 형식이 안전한 레이어 역할을합니다.


wxWidgets 를 사용할 수 있으며 로깅에 탁월한 클래스사용할 수 있습니다 . 다소 쉽고 간단합니다. 예를 들어, 모든 로그 (예 : wxLogError, wxLogMessage, wxLogDebug 등)를 수집하는 대화 상자를 만들 수 있습니다.


Pantheios 는 성능면에서 좋은 후보이지만 개인적으로 선호하는 것은 P7 라이브러리입니다. 내 내부 테스트 (CPU i7-4870HQ, SSD)에 따르면 P7이 Pantheios보다 빠릅니다.

  • Pantheios는 초당 180 만 개의 로그 라인을 기록합니다 (시간 및 문자 메시지).
  • P7은 초당 2.4M 로그 행을 기록합니다 (시간, 스레드, CPU 코어, 함수, 파일, 행 및 텍스트 메시지).

참조 URL : https://stackoverflow.com/questions/1736295/c-logging-framework-suggestions

반응형