Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the most widely-used logging framework in C#? [closed]

Tags:

c#

logging

I'm looking into how to implement logging in my C# app - its a DLL class library. What logging frameworks are most widely used - what would give users of my DLL the most flexibility and configurability? Is there a C# equivalent of log4j?

like image 693
Nosrama Avatar asked Aug 11 '09 12:08

Nosrama


People also ask

What is Log4j and Logback?

Log4j has been defined as java based application with logging utility which is the java framework for logging messages to a different output, which helps enable to locate the problems. Logback is defined as the successor to log4j, which is also a java framework for logging messages in any java based applications.

What is Logger framework?

A logging framework is a utility specifically designed to standardize the process of logging in your application. This can come in the form of a third party tool, such as log4j or its . NET cousin, log4net. But a lot of organizations also roll their own.

Which is better NLog or log4net?

There is some small difference between NLog and log4net. NLog is easier to configure, and supports a much cleaner code-based configuration than log4net. I think the defaults in NLog are also more sensible than in log4net.

Can we use Log4j in C#?

The easiest and quickest way to get started using log4net is by installing it through the NuGet Package Manager. Assuming that you have created a console application project in Visual Studio, you can install log4net via NuGet Manager, by following these steps.


1 Answers

2009 Answer: Equivalent of log4j for .NET platform is log4net and I am guessing it's widely used.


2019 Answer: Here are a variety of alternatives from https://github.com/quozd/awesome-dotnet/blob/master/README.md#logging:

  • Essential Diagnostics - Extends the inbuilt features of System.Diagnostics namespace to provide flexible logging
  • NLog - NLog - Advanced .NET and Silverlight logging
  • Logazmic - Open source NLog viewer for Windows
  • ELMAH - Official ELMAH site
  • Elmah MVC - Elmah for MVC
  • Logary - Logary is a high performance, multi-target logging, metric, tracing and health-check library for Mono and .NET. .NET's answer to DropWizard. Supports many targets, built for micro-services.
  • Log4Net - The Apache log4net library is a tool to help the programmer output log statements to a variety of output targets
  • com.csutil.Log - A lightweight zero config Log wrapper that can be combined with other logging libraries like Serilog for more complex usecases.
  • Serilog - A no-nonsense logging library for the NoSQL era. Combines the best of traditional and structured diagnostic logging in an easy-to-use package.
  • StackExchange.Exceptional - Error handler used for the Stack Exchange network
  • Semantic Logging Application Block (SLAB) - Extends the inbuilt features of System.Diagnostics.Tracing namespace (EventSource class) to log to several sinks including Azure Tables, Databases, files (JSON, XML, text). Supports in-process and out-of-process logging through ETW, and Rx for real-time filtering/aggregating of events.
  • Foundatio - A fluent logging API that can be used to log messages throughout your application.
  • Exceptionless - Exceptionless .NET Client
  • Loupe - Centralized .NET logging and monitoring. [Proprietary] [Free Tier]
  • elmah.io - Cloud logging for .NET web applications using ELMAH. Find bugs before you go live. Powerful search, API, integration with Slack, GitHub, Visual Studio and more. [Free for OSS] [$]
  • BugSnag - Logs errors. Includes useful diagnostic info like stack trace, session, release, etc. Has a free tier. [Free for OSS][$]
like image 187
Cagdas Altinkaya Avatar answered Sep 23 '22 12:09

Cagdas Altinkaya