Log 4 Net学習ノート(1)-完全な例
10042 ワード
一、開発環境
コンパイラ:VS 2013
.Netバージョン:4.5
二、開発プロセス
1.nugetからlog 4 netを取得する
2.log 4 netのプロファイルの設定
1 <?xml version="1.0" encoding="utf-8" ?>
2 <configuration>
3
4 <configSections>
5 <section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
6 </configSections>
7
8 <log4net debug="false">
9 <root>
10 <level value="ALL"/>
11 <appender-ref ref="UserLogAppender"/>
12 <appender-ref ref="SystemLogAppender"/>
13 </root>
14 <!-- -->
15 <appender name="UserLogAppender" type="log4net.Appender.RollingFileAppender,log4net">
16 <!-- -->
17 <file value="./Log/"/>
18 <!-- :20151113_user.log-->
19 <param name="DatePattern" value="yyyyMMdd"_user.log""/>
20 <!-- -->
21 <param name="AppendToFile" value="true"/>
22 <!--log -->
23 <param name="MaxSizeRollBackups" value="10"/>
24 <!--log -->
25 <param name="MaximumFileSize" value="5MB"/>
26 <!-- -->
27 <param name="StaticLogFileName" value="false"/>
28 <!-- XX -->
29 <param name="RollingStyle" value="Composite"/>
30 <!-- -->
31 <layout type="log4net.Layout.PatternLayout,log4net">
32 <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n"/>
33 <param name="Header" value=""/>
34 </layout>
35 <filter type="log4net.Filter.LevelRangeFilter">
36 <param name="LevelMin" value="INFO"/>
37 <param name="LevelMax" value="INFO"/>
38 </filter>
39 </appender>
40 <!-- , , , -->
41 <appender name="SystemLogAppender" type="log4net.Appender.RollingFileAppender,log4net">
42 <file value="./Log/"/>
43 <param name="File" value="Log\log_sys.log" />
44 <param name="DatePattern" value="yyyyMMdd"_sys.log""/>
45 <param name="AppendToFile" value="true"/>
46 <param name="RollingStyle" value="Composite"/>
47 <param name="MaxSizeRollBackups" value="10"/>
48 <param name="MaximumFileSize" value="5MB"/>
49 <param name="StaticLogFileName" value="false"/>
50 <layout type="log4net.Layout.PatternLayout,log4net">
51 <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss}%newline%message%n"/>
52 <param name="Header" value=""/>
53 </layout>
54 <filter type="log4net.Filter.LevelRangeFilter">
55 <param name="LevelMin" value="ERROR"/>
56 <param name="LevelMax" value="ErrOR"/>
57 </filter>
58 </appender>
59 </log4net>
60
61 </configuration>
3.AssembInfo.csに情報を追加
[assembly :log4net.Config.XmlConfigurator(Watch = true)]
4.コンソールプログラム
namespace Demo.Log4Net
{
class Program
{
static void Main(string[] args)
{
ILog log = LogManager.GetLogger(typeof(LogHelper));
log.Info("info");
log.Error("error");
Console.ReadKey();
}
}
}
1.nugetからlog 4 netを取得する
2.log 4 netのプロファイルの設定
1 <?xml version="1.0" encoding="utf-8" ?>
2 <configuration>
3
4 <configSections>
5 <section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
6 </configSections>
7
8 <log4net debug="false">
9 <root>
10 <level value="ALL"/>
11 <appender-ref ref="UserLogAppender"/>
12 <appender-ref ref="SystemLogAppender"/>
13 </root>
14 <!-- -->
15 <appender name="UserLogAppender" type="log4net.Appender.RollingFileAppender,log4net">
16 <!-- -->
17 <file value="./Log/"/>
18 <!-- :20151113_user.log-->
19 <param name="DatePattern" value="yyyyMMdd"_user.log""/>
20 <!-- -->
21 <param name="AppendToFile" value="true"/>
22 <!--log -->
23 <param name="MaxSizeRollBackups" value="10"/>
24 <!--log -->
25 <param name="MaximumFileSize" value="5MB"/>
26 <!-- -->
27 <param name="StaticLogFileName" value="false"/>
28 <!-- XX -->
29 <param name="RollingStyle" value="Composite"/>
30 <!-- -->
31 <layout type="log4net.Layout.PatternLayout,log4net">
32 <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n"/>
33 <param name="Header" value=""/>
34 </layout>
35 <filter type="log4net.Filter.LevelRangeFilter">
36 <param name="LevelMin" value="INFO"/>
37 <param name="LevelMax" value="INFO"/>
38 </filter>
39 </appender>
40 <!-- , , , -->
41 <appender name="SystemLogAppender" type="log4net.Appender.RollingFileAppender,log4net">
42 <file value="./Log/"/>
43 <param name="File" value="Log\log_sys.log" />
44 <param name="DatePattern" value="yyyyMMdd"_sys.log""/>
45 <param name="AppendToFile" value="true"/>
46 <param name="RollingStyle" value="Composite"/>
47 <param name="MaxSizeRollBackups" value="10"/>
48 <param name="MaximumFileSize" value="5MB"/>
49 <param name="StaticLogFileName" value="false"/>
50 <layout type="log4net.Layout.PatternLayout,log4net">
51 <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss}%newline%message%n"/>
52 <param name="Header" value=""/>
53 </layout>
54 <filter type="log4net.Filter.LevelRangeFilter">
55 <param name="LevelMin" value="ERROR"/>
56 <param name="LevelMax" value="ErrOR"/>
57 </filter>
58 </appender>
59 </log4net>
60
61 </configuration>
3.AssembInfo.csに情報を追加
[assembly :log4net.Config.XmlConfigurator(Watch = true)]
4.コンソールプログラム
namespace Demo.Log4Net
{
class Program
{
static void Main(string[] args)
{
ILog log = LogManager.GetLogger(typeof(LogHelper));
log.Info("info");
log.Error("error");
Console.ReadKey();
}
}
}