28 lines
1015 B
C#
28 lines
1015 B
C#
namespace DTLib.Logging.New;
|
|
|
|
public class DefaultLogFormat : ILogFormat
|
|
{
|
|
|
|
public bool PrintTimeStamp { get; set; }
|
|
public bool PrintContext { get; set; }
|
|
public bool PrintSeverity { get; set; }
|
|
|
|
public DefaultLogFormat(bool printTimeStamp = false, bool printContext = true, bool printSeverity = true)
|
|
{
|
|
PrintTimeStamp = printTimeStamp;
|
|
PrintContext = printContext;
|
|
PrintSeverity = printSeverity;
|
|
}
|
|
|
|
public string CreateMessage(string context, LogSeverity severity, object message)
|
|
{
|
|
var sb = new StringBuilder();
|
|
if (PrintTimeStamp) sb.Append('[').Append(DateTime.Now.ToString(MyTimeFormat.ForText)).Append(']');
|
|
if(PrintContext) sb.Append('[').Append(context).Append(']');
|
|
if(PrintSeverity) sb.Append('[').Append(severity.ToString()).Append(']');
|
|
if (sb.Length != 0) sb.Append(": ");
|
|
sb.Append(message.ToString());
|
|
sb.Append('\n');
|
|
return sb.ToString();
|
|
}
|
|
} |