17 lines
610 B
C#
17 lines
610 B
C#
namespace DTLib.Loggers;
|
|
|
|
public abstract class BaseLogger
|
|
{
|
|
public string Logfile { get; init; }
|
|
public BaseLogger(string logfile) => Logfile = logfile;
|
|
public BaseLogger(string dir, string programName) => Logfile = $"{dir}\\{programName}_{DateTime.Now}.log".Replace(':', '-').Replace(' ', '_');
|
|
|
|
|
|
public bool IsEnabled { get; private set; } = false;
|
|
protected readonly object statelocker = new();
|
|
public void Disable() { lock (statelocker) IsEnabled = false; }
|
|
public void Enable() { lock (statelocker) IsEnabled = true; }
|
|
|
|
public abstract void Log(params string[] msg);
|
|
}
|