Skip to content
This repository has been archived by the owner on Oct 30, 2024. It is now read-only.
/ EasyLog Public archive

Simple and easy Logging System for C# .NET with colors and format support

License

Notifications You must be signed in to change notification settings

atomsk-0/EasyLog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EasyLog

Simple and easy to use logging system.

How to use?

  • Install Easy-Log to your project from nuget dotnet add package Easy-Log
  • You can either use global instance Log or create your own
var options = new LoggerOptions
{
    ConsoleLogging = true, // Log to console
    ShowDateAndTime = true, // Show Date and time with the log prefix
    FileLogging = true, // Allow log to file
    FileOutputPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "App.log") // File output path
};
Logger log = new Logger(options);

If you use global instance you can set options by calling

Log.SetOptions(options);

LogTypes

Easy-Log has flexible log types where you can create your own using ILogType interface

  • Here is example
public class Verbose : ILogType
{
    public string Prefix => "VERBOSE"; // Set log prefix
    public Color PrefixColor => Color.Gray; // Set prefix color
    public Color ArgColor => Color.Gray; //Set args color
}

Logging

To log you can use Write or WriteLine function. If you want log Exception you can use LogException

/* structure */
instance.WriteLine<ILogType>(string, args)
instance.Write<ILogType>(string, args)

Log.WriteLine<Debug>("Processing data - ID: {} Status: {}", 419, "In Progress");
Log.WriteLine<Info>("Task completed successfully - ID: {}", 613);
Log.WriteLine<Warning>("Unexpected input detected - Code: {}", "ABC123");
Log.WriteLine<Error>("Critical error occurred - Code: {}", "X987");

try
{
    List<int> list = [];
    var item = list[10];
}
catch (Exception e)
{
    Log.LogException(e);
}