@@ -48,17 +48,45 @@ static Log()
48
48
configuration . AddTarget ( "file" , fileTargetASyncWrapper ) ;
49
49
configuration . AddTarget ( "debug" , debugTarget ) ;
50
50
51
+ var fileRule = new LoggingRule ( "*" , LogLevel . Debug , fileTargetASyncWrapper )
52
+ {
53
+ RuleName = "file"
54
+ } ;
51
55
#if DEBUG
52
- var fileRule = new LoggingRule ( "*" , LogLevel . Debug , fileTargetASyncWrapper ) ;
53
- var debugRule = new LoggingRule ( "*" , LogLevel . Debug , debugTarget ) ;
56
+ var debugRule = new LoggingRule ( "*" , LogLevel . Debug , debugTarget )
57
+ {
58
+ RuleName = "debug"
59
+ } ;
54
60
configuration . LoggingRules . Add ( debugRule ) ;
55
- #else
56
- var fileRule = new LoggingRule ( "*" , LogLevel . Info , fileTargetASyncWrapper ) ;
57
61
#endif
58
62
configuration . LoggingRules . Add ( fileRule ) ;
59
63
LogManager . Configuration = configuration ;
60
64
}
61
65
66
+ public static void SetLogLevel ( LOGLEVEL level )
67
+ {
68
+ switch ( level )
69
+ {
70
+ case LOGLEVEL . DEBUG :
71
+ UseDebugLogLevel ( ) ;
72
+ break ;
73
+ default :
74
+ UseInfoLogLevel ( ) ;
75
+ break ;
76
+ }
77
+ Info ( nameof ( Logger ) , $ "Using log level: { level } .") ;
78
+ }
79
+
80
+ private static void UseDebugLogLevel ( )
81
+ {
82
+ LogManager . Configuration . FindRuleByName ( "file" ) . SetLoggingLevels ( LogLevel . Debug , LogLevel . Fatal ) ;
83
+ }
84
+
85
+ private static void UseInfoLogLevel ( )
86
+ {
87
+ LogManager . Configuration . FindRuleByName ( "file" ) . SetLoggingLevels ( LogLevel . Info , LogLevel . Fatal ) ;
88
+ }
89
+
62
90
private static void LogFaultyFormat ( string message )
63
91
{
64
92
var logger = LogManager . GetLogger ( "FaultyLogger" ) ;
@@ -206,4 +234,10 @@ public static void Warn(string message)
206
234
LogInternal ( message , LogLevel . Warn ) ;
207
235
}
208
236
}
237
+
238
+ public enum LOGLEVEL
239
+ {
240
+ DEBUG ,
241
+ INFO
242
+ }
209
243
}
0 commit comments