C# Serilog-如何使用颜色执行logger.Information(“字符串”)?
我想在控制台上输出一些带有颜色的C# Serilog-如何使用颜色执行logger.Information(“字符串”)?,c#,.net-core,serilog,C#,.net Core,Serilog,我想在控制台上输出一些带有颜色的\u logger.Information(“text”) e、 g如果日志消息以Success开头,则用绿色书写 有人知道这是否可以在不编写自己的新水槽的情况下实现吗 如果logs消息以Success开头,则用绿色书写 现在实现这一目标的唯一方法是编写自己的自定义版本的。你必须实现你自己的 ,但您只能为一组已知类型的信息定义颜色,例如属性中的字符串或布尔值或常规文本。你可以看到这张照片 下面是一个如何使用创建自定义主题的示例。在本例中,文本显示为绿色,字符串显示
\u logger.Information(“text”)
e、 g如果日志消息以Success
开头,则用绿色书写
有人知道这是否可以在不编写自己的新水槽的情况下实现吗
如果logs消息以Success开头,则用绿色书写
现在实现这一目标的唯一方法是编写自己的自定义版本的。你必须实现你自己的
,但您只能为一组已知类型的信息定义颜色,例如属性中的字符串
或布尔值
或常规文本。你可以看到这张照片
下面是一个如何使用创建自定义主题的示例。在本例中,文本显示为绿色,字符串显示为黄色
var自定义主题样式=
新词典
{
{
ConsoleTimeStyle.Text,新系统ConsoleTimeStyle
{
前台=控制台颜色。绿色,
}
},
{
CONSOLLETHEMESTYLE.String,新系统CONSOLLETHEMESTYLE
{
前景=控制台颜色。黄色,
}
},
};
var customTheme=新系统控制台me(customThemeStyles);
Logger.Logger=新的LoggerConfiguration()
.WriteTo.Console(主题:customTheme)
.CreateLogger();
Log.Information(“早上好{UserName}!!!”,“Augusto”);
如果logs消息以Success开头,则用绿色书写
现在实现这一目标的唯一方法是编写自己的自定义版本的。你必须实现你自己的
,但您只能为一组已知类型的信息定义颜色,例如属性中的字符串
或布尔值
或常规文本。你可以看到这张照片
下面是一个如何使用创建自定义主题的示例。在本例中,文本显示为绿色,字符串显示为黄色
var自定义主题样式=
新词典
{
{
ConsoleTimeStyle.Text,新系统ConsoleTimeStyle
{
前台=控制台颜色。绿色,
}
},
{
CONSOLLETHEMESTYLE.String,新系统CONSOLLETHEMESTYLE
{
前景=控制台颜色。黄色,
}
},
};
var customTheme=新系统控制台me(customThemeStyles);
Logger.Logger=新的LoggerConfiguration()
.WriteTo.Console(主题:customTheme)
.CreateLogger();
Log.Information(“早上好{UserName}!!!”,“Augusto”);
这是否回答了您的问题?嗨,@Sinatr我看到了,但我不确定如何应用自定义规则,如果日志消息以成功开始,然后用绿色写它,我不认为你不创建自己的颜色模式就可以做到这一点回答你的问题?您好,@Sinatr我已经看到了,但我不确定如何应用自定义规则,如果日志消息以成功开头,然后用绿色写它,我不认为您可以在不创建自己的颜色模式的情况下做到这一点
var customThemeStyles =
new Dictionary<ConsoleThemeStyle, SystemConsoleThemeStyle>
{
{
ConsoleThemeStyle.Text, new SystemConsoleThemeStyle
{
Foreground = ConsoleColor.Green,
}
},
{
ConsoleThemeStyle.String, new SystemConsoleThemeStyle
{
Foreground = ConsoleColor.Yellow,
}
},
};
var customTheme = new SystemConsoleTheme(customThemeStyles);
Log.Logger = new LoggerConfiguration()
.WriteTo.Console(theme: customTheme)
.CreateLogger();
Log.Information("Good morning {UserName}!!!", "Augusto");