2016-03-25 2 views
0

Я пытаюсь настроить log4net для записи цветного текста на консоль со следующими настройками.log4net colorConsoleAppender не показывает цвет

<log4net> 
    <appender name="ColoredConsoleAppender" type="log4net.Appender.ColoredConsoleAppender"> 
    <mapping> 
     <level value="ERROR" /> 
     <foreColor value="Red" /> 
     <backColor value="Green" /> 
    </mapping> 
    <mapping> 
     <level value="DEBUG" /> 
     <foreColor value="White" /> 
     <backColor value="Green" /> 
    </mapping> 
    <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date %-5level [%thread] %logger [%property{NDC}] - %message%newline" /> 
    </layout> 
    </appender> 

    <!-- Set root logger level to DEBUG and its only appender to ColoredConsoleAppender --> 
    <root> 
    <level value="DEBUG" /> 
    <appender-ref ref="ColoredConsoleAppender" /> 
    </root> 
</log4net> 

Однако журналы ошибок не выходят как красный цвет. Что может быть проблемой?

ответ

0

Вы должны добавить сопоставления (вид хромовых, которые, похоже, не установлены по умолчанию).

var console = new ColoredConsoleAppender 
{ 
    Layout = patternLayout 
}; 
console.AddMapping(new ColoredConsoleAppender.LevelColors() 
{ 
    BackColor = ColoredConsoleAppender.Colors.Yellow, 
    ForeColor = ColoredConsoleAppender.Colors.Red, 
    Level = Level.Info 
}); 
console.ActivateOptions(); 
hierarchy.Root.AddAppender(console); 

И если вы больше конфиг/XML такой парень:

<mapping> 
    <level value="ERROR" /> 
    <foreColor value="White" /> 
    <backColor value="Red, HighIntensity" /> 
</mapping> 
<mapping> 
    <level value="DEBUG" /> 
    <backColor value="Green" /> 
</mapping> 

Source

Смежные вопросы