Log4net vs NLog vs Serilog 성능 차이C#/C#이야기2021. 12. 28. 20:17
Table of Contents
오늘은 C#에서 어떤 로그라이브러리를 사용하는게 가장 성능이 우수할지 정리해보려고합니다.
Log4net
- Log4net은 이미 유명한 Log4J를 포팅한 로그라이브러리
- 다양한 기능을 제공
- 동기식 로깅 -> 비동기 처리도 가능하다.
단점
이것저것 세팅할게 많고 사용법을 익혀야한다.
NLog
- 비동기식 로깅 지원
- Loss율이 낮다
- 구조적 로깅 지원(NLog 4.5 이상)
치명적인 단점으로 Logger자체에 문제가 생기면 Fatal 에러가 난다고 한다.
사실인지는 직접 해봐야 알것같다.
Serilog
- 동기식 로깅 지원
- 구조적 로깅에 최적화!!
- 쉬운 세팅과 사용법
속도비교
로그 100000개를 작성하여 비교했으며
Stopwatch클래스를 사용해 ms단위로 측정하였다.
1. Serilog(1446ms)
2. NLog : 원래는 Serilog와 속도가 비슷하거나 조금 느릴것으로 예상했으나 사용방법이 익숙치않아서그런지 20630ms가 나왔다.;;;
3. Log4net(1705ms)
결과
실제로 사용해보니 Serilog의 속도가 빠르고, 라이브러리 사용도 Logger를 만들면 바로 사용가능해 쉬운 편이라 Serilog를 사용하기로 했다.
혹시 NLog속도 측정이나 버그에 관한 문제를 아시는 분은 댓글 달아주시면 감사하겠습니다.
참고 사이트
반응형
'C# > C#이야기' 카테고리의 다른 글
[제작 프로그램] 이미지를 jpg로 압축(변환)해주는 프로그램 (0) | 2022.05.02 |
---|---|
[C#] DLL불러올때 'System.IO.FileNotFoundException' 예외 (0) | 2022.02.09 |
[C#] EventWaitHandle로 TimeOut기능 만들기 (0) | 2022.01.23 |
[C#] FontAwesome 사용하는 법(spinner 만들기) (2) | 2022.01.13 |
@반나무 :: 반나무_뿌리
3년차 WPF 개발자입니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!