Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
112 changes: 56 additions & 56 deletions GFramework.Core/Logging/Formatters/DefaultLogFormatter.cs
Original file line number Diff line number Diff line change
@@ -1,57 +1,57 @@
using System;
using System.Text;
using GFramework.Core.Abstractions.Logging;
namespace GFramework.Core.Logging.Formatters;
/// <summary>
/// 默认日志格式化器,保持与现有格式兼容
/// </summary>
public sealed class DefaultLogFormatter : ILogFormatter
{
private static readonly string[] LevelStrings =
[
"TRACE ",
"DEBUG ",
"INFO ",
"WARNING",
"ERROR ",
"FATAL "
];
/// <summary>
/// 将日志条目格式化为默认格式
/// </summary>
/// <param name="entry">日志条目</param>
/// <returns>格式化后的日志字符串</returns>
public string Format(LogEntry entry)
{
var timestamp = entry.Timestamp.ToString("yyyy-MM-dd HH:mm:ss.fff");
var levelStr = LevelStrings[(int)entry.Level];
var sb = new StringBuilder();
sb.Append('[').Append(timestamp).Append("] ")
.Append(levelStr).Append(" [")
.Append(entry.LoggerName).Append("] ")
.Append(entry.Message);
// 添加结构化属性
var properties = entry.GetAllProperties();
if (properties.Count > 0)
{
sb.Append(" |");
foreach (var prop in properties)
{
sb.Append(' ').Append(prop.Key).Append('=').Append(prop.Value);
}
}
// 添加异常信息
if (entry.Exception != null)
{
sb.Append(global::System.Environment.NewLine).Append(entry.Exception);
}
return sb.ToString();
}
using System;
using System.Text;
using GFramework.Core.Abstractions.Logging;

namespace GFramework.Core.Logging.Formatters;

/// <summary>
/// 默认日志格式化器,保持与现有格式兼容
/// </summary>
public sealed class DefaultLogFormatter : ILogFormatter
{
private static readonly string[] LevelStrings =
[
"TRACE ",
"DEBUG ",
"INFO ",
"WARNING",
"ERROR ",
"FATAL "
];

/// <summary>
/// 将日志条目格式化为默认格式
/// </summary>
/// <param name="entry">日志条目</param>
/// <returns>格式化后的日志字符串</returns>
public string Format(LogEntry entry)
{
var timestamp = entry.Timestamp.ToString("yyyy-MM-dd HH:mm:ss.fff");
var levelStr = LevelStrings[(int)entry.Level];
var sb = new StringBuilder();

sb.Append('[').Append(timestamp).Append("] ")
.Append(levelStr).Append(" [")
.Append(entry.LoggerName).Append("] ")
.Append(entry.Message);

// 添加结构化属性
var properties = entry.GetAllProperties();
if (properties.Count > 0)
{
sb.Append(" |");
foreach (var prop in properties)
{
sb.Append(' ').Append(prop.Key).Append('=').Append(prop.Value);
}
}

// 添加异常信息
if (entry.Exception != null)
{
sb.Append(global::System.Environment.NewLine).Append(entry.Exception);
}

return sb.ToString();
}
}
Loading
Loading