Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon mvvmcross에서 mvxlog를 통해 microsoft.extensions.logging을 사용하면 어떤 이점이 있습니까?


mvvmcross에서 mvxlog를 통해 microsoft.extensions.logging을 사용하면 어떤 이점이 있습니까?


MVVMCross의 맥락에서 Microsoft.extensions.logging을 MVXLOG와 비교할 때 후자를 사용하여 전자를 사용함으로써 몇 가지 이점이 나타납니다.

1. 확장 성 및 유연성 : Microsoft.extensions.logging은 NLOG, Serilog 및 Log4Net과 같은 다양한 타사 로깅 제공 업체와 쉽게 통합 할 수있는 확장 가능한 프레임 워크를 제공합니다. 이 유연성은 본질적으로 MVXLOG에 내장되지 않았으며, 이는 다른 로깅 프레임 워크와 통합하는 능력이 더 제한적이었습니다 [1] [2]. Microsoft.extensions.logging을 사용하면 응용 프로그램 코드를 변경하지 않고 다른 로깅 제공 업체간에 쉽게 전환 할 수 있으므로 다양한 환경 및 요구 사항에 더 적응할 수 있습니다.

2. 종속성 주입 지원 : Microsoft.extensions.logging은 MVVMCross로 구축 된 많은 최신 .NET 애플리케이션의 핵심 기능인 종속성 주입 (DI)과 완벽하게 작동하도록 설계되었습니다. 이 통합은 로깅 구성 요소의 장치 테스트 및 조롱을 더 쉽게 할 수 있으며, 이는 강력한 테스트 범위를 유지하는 데 유리합니다 [5] [8]. MVXLOG는 주입 가능하지만 Microsoft.extensions.logging과 동일한 수준의 DI 프레임 워크와 동일한 수준의 통합을 제공하지 않습니다.

3. 표준화 및 커뮤니티 지원 : Microsoft.extensions.logging은 .NET 생태계에서 널리 채택 된 표준입니다. 이는 광범위한 커뮤니티 지원 및 문서화의 혜택을 의미합니다. 이 표준화를 통해 개발자는 다른 프로젝트와 플랫폼에서 로깅을 더 쉽게 이해하고 구현할 수 있습니다 [2] [11]. 대조적으로, MVXLOG는 MVVMCross에만 적합하며 해당 프레임 워크 외부에서 널리 인식되거나 지원되지 않을 수 있습니다.

4. 확장 성과 성능 : Microsoft.extensions.logging의 아키텍처는 대규모 응용 프로그램을 효율적으로 처리하도록 설계되었습니다. 로그 필터링 및 분류와 같은 기능을 제공하여 불필요한 로그 출력을 줄임으로써 성능을 향상시킬 수 있습니다 [11]. MVXLOG가 가능하지만 Microsoft.extensions.logging에서 사용 가능한 확장 성 및 성능 최적화와 일치하지 않을 수 있습니다.

5. 구성 유연성 : Microsoft.extensions.logging은 JSON 파일 (예 :`AppSettings.json`)을 포함한 다양한 수단을 통해 구성을 허용하며, 이는 응용 프로그램을 다시 컴파일하지 않고 로그 설정을 관리하는 유연한 방법을 제공합니다 [5]. 이 유연성은 특히 로깅 요구가 자주 변할 수있는 환경에서 특히 유용합니다.

6. 로그 수준 및 심각도 : 두 프레임 워크는 다양한 로그 수준 (예 : 추적, 디버그, 정보, 경고, 오류)을 지원하지만 Microsoft.extensions.logging에는 추가 '임계'레벨과 구성 목적을위한 '레벨'레벨이 포함됩니다 [11]. 이는 로깅 심각도 및 구성에 대한보다 세분화 된 제어를 제공합니다.

요약하면 MVXLOG는 MVVMCross 생태계 내에서 유능한 로깅 솔루션이지만 Microsoft.extensions.logging은 더 넓은 호환성, 확장 성 및 커뮤니티 지원을 제공하므로 최신 .NET 애플리케이션에서 로깅 요구에보다 다양한 선택이됩니다.

인용 :
[1] https://www.mvvmcross.com/documentation/fundamentals/logging-new
[2] https://putridparrot.com/blog/using-microsoft-extensions-logging/
[3] https://www.mvvmcross.com/documentation/advanced/customizing-using-app-and-setup
[4] https://learn.microsoft.com/en-us/ef/core/logging-events-diagnostics/extensions-logging
[5] https://stackoverflow.com/questions/58209076/microsoft-extensions-logging-vs-nlog
[6] https://www.mvvmcross.com/mvvmcross-8.0.0-release/
[7] https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle
[8] https://stackoverflow.com/questions/46483019/logging-from-ctatic-members-with-microsoft-extensions-logging
[9] https://www.mvvmcross.com/logging
[10] https://stackoverflow.com/questions/17602137/mvvmcross-how-does-this-get-get-linked-tothe-viewmodel/17602246
[11] https://blog.stephencleary.com/2018/06/microsoft-extensions-logging-part-2-types.html