@@ -17,16 +17,16 @@ public class MicrosoftConsoleJsonLayout : JsonLayout
17
17
{
18
18
private static readonly string [ ] EventIdMapper = Enumerable . Range ( 0 , 50 ) . Select ( id => id . ToString ( System . Globalization . CultureInfo . Inv
8000
ariantCulture ) ) . ToArray ( ) ;
19
19
20
- private readonly SimpleLayout _timestampLayout = new SimpleLayout ( "${date:format=o:universalTime=true}" ) ;
20
+ private readonly SimpleLayout _timestampLayout = new SimpleLayout ( "\" ${date:format=o:universalTime=true}\" " ) ;
21
21
22
22
/// <summary>
23
23
/// Initializes a new instance of the <see cref="MicrosoftConsoleJsonLayout" /> class.
24
24
/// </summary>
25
25
public MicrosoftConsoleJsonLayout ( )
26
26
{
27
- Attributes . Add ( new JsonAttribute ( "Timestamp" , _timestampLayout ) ) ;
27
+ Attributes . Add ( new JsonAttribute ( "Timestamp" , _timestampLayout ) { Encode = false } ) ;
28
28
Attributes . Add ( new JsonAttribute ( "EventId" , Layout . FromMethod ( evt => LookupEventId ( evt ) , LayoutRenderOptions . ThreadAgnostic ) ) { Encode = false } ) ;
29
- Attributes . Add ( new JsonAttribute ( "LogLevel" , Layout . FromMethod ( evt => ConvertLogLevel ( evt . Level ) , LayoutRenderOptions . ThreadAgnostic ) ) ) ;
29
+ Attributes . Add ( new JsonAttribute ( "LogLevel" , Layout . FromMethod ( evt => ConvertLogLevel ( evt . Level ) , LayoutRenderOptions . ThreadAgnostic ) ) { Encode = false } ) ;
30
30
Attributes . Add ( new JsonAttribute ( "Category" , "${logger}" ) ) ;
31
31
Attributes . Add ( new JsonAttribute ( "Message" , "${message}" ) ) ;
32
32
Attributes . Add ( new JsonAttribute ( "Exception" , "${replace-newlines:${exception:format=tostring,data}}" ) ) ;
@@ -79,7 +79,7 @@ public string TimestampFormat
79
79
get
80
80
{
81
81
var index = LookupNamedAttributeIndex ( "Timestamp" ) ;
82
- return index >= 0 ? ( ( Attributes [ index ] . Layout as SimpleLayout ) ? . LayoutRenderers ? . FirstOrDefault ( ) as DateLayoutRenderer ) ? . Format : null ;
82
+ return index >= 0 ? ( ( Attributes [ index ] . Layout as SimpleLayout ) ? . LayoutRenderers ? . OfType < DateLayoutRenderer > ( ) . FirstOrDefault ( ) ) ? . Format : null ;
83
83
}
84
84
set
85
85
{
@@ -91,9 +91,9 @@ public string TimestampFormat
91
91
92
92
if ( ! string . IsNullOrEmpty ( value ) )
93
93
{
94
- var dateLayoutRenderer = _timestampLayout . LayoutRenderers . First ( ) as DateLayoutRenderer ;
94
+ var dateLayoutRenderer = _timestampLayout . LayoutRenderers . OfType < DateLayoutRenderer > ( ) . First ( ) ;
95
95
dateLayoutRenderer . Format = value ;
96
- Attributes . Insert ( 0 , new JsonAttribute ( "Timestamp" , _timestampLayout ) ) ;
96
+ Attributes . Insert ( 0 , new JsonAttribute ( "Timestamp" , _timestampLayout ) { Encode = false } ) ;
97
97
}
98
98
}
99
99
}
@@ -144,17 +144,17 @@ private static string ConvertEventId(int eventId)
144
144
private static string ConvertLogLevel ( LogLevel logLevel )
145
145
{
146
146
if ( logLevel == LogLevel . Trace )
147
- return nameof ( Microsoft . Extensions . Logging . LogLevel . Trace ) ;
147
+ return " \" " + nameof ( Microsoft . Extensions . Logging . LogLevel . Trace ) + " \" " ;
148
148
else if ( logLevel == LogLevel . Debug )
149
- return nameof ( Microsoft . Extensions . Logging . LogLevel . Debug ) ;
149
+ return " \" " + nameof ( Microsoft . Extensions . Logging . LogLevel . Debug ) + " \" " ;
150
150
else if ( logLevel == LogLevel . Info )
151
- return nameof ( Microsoft . Extensions . Logging . LogLevel . Information ) ;
151
+ return " \" " + nameof ( Microsoft . Extensions . Logging . LogLevel . Information ) + " \" " ;
152
152
else if ( logLevel == LogLevel . Warn )
153
- return nameof ( Microsoft . Extensions . Logging . LogLevel . Warning ) ;
153
+ return " \" " + nameof ( Microsoft . Extensions . Logging . LogLevel . Warning ) + " \" " ;
154
154
else if ( logLevel == LogLevel . Error )
155
- return nameof ( Microsoft . Extensions . Logging . LogLevel . Error ) ;
155
+ return " \" " + nameof ( Microsoft . Extensions . Logging . LogLevel . Error ) + " \" " ;
156
156
else
157
- return nameof ( Microsoft . Extensions . Logging . LogLevel . Critical ) ;
157
+ return " \" " + nameof ( Microsoft . Extensions . Logging . LogLevel . Critical ) + " \" " ;
158
158
}
159
159
}
160
160
}
0 commit comments