window服务如何引用Log4Net
--服务器日志
第一步:引用Common.Logging.Log4Net1211
第二步:二种方法
1.0 AssemblyInfo类引用[assembly: log4net.Config.XmlConfigurator(Watch = true)]
如:

2.0 log4net.Config.XmlConfigurator.Configure();
如下图

第三步:appconfig配置文件:
1 <?xml version="1.0" encoding="utf-8" ?> 2 <configuration> 3 <configSections> 4 <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> 5 </configSections> 6 7 <log4net debug="false"> 8 <appender name="rolling" type="log4net.Appender.RollingFileAppender, log4net"> 9 <file value="logs/logfile.txt"/> 10 <appendToFile value="true"/> 11 <rollingStyle value="Date"/> 12 <datePattern value="yyyy-MM-dd"/> 13 <layout type="log4net.Layout.PatternLayout,log4net"> 14 <param name="ConversionPattern" value="%d{ABSOLUTE} %c{1}(%L) [%-5p] - %m%n"/> 15 </layout> 16 <!--使用最小锁定模型(minimal locking model),以允许多个进程可以写入同一个文件 --> 17 <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 18 </appender> 19 20 21 <appender name="find_access_token" type="log4net.Appender.RollingFileAppender"> 22 <param name="File" value="logs\find_access_token"/> 23 <param name="AppendToFile" value="true"/> 24 <param name="MaxSizeRollBackups" value="10"/> 25 <param name="StaticLogFileName" value="false"/> 26 <param name="DatePattern" value="yyyy-MM-dd\\yyy-MM-dd-HH".log""/> 27 <param name="RollingStyle" value="Date"/> 28 <Encoding value="UTF-8" /> 29 <layout type="log4net.Layout.PatternLayout"> 30 <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n"/> 31 </layout> 32 <!--使用最小锁定模型(minimal locking model),以允许多个进程可以写入同一个文件 --> 33 <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 34 </appender> 35 36 37 <appender name="find_access_token" type="log4net.Appender.RollingFileAppender"> 38 <param name="File" value="logs\find_access_token"/> 39 <param name="AppendToFile" value="true"/> 40 <param name="MaxSizeRollBackups" value="10"/> 41 <param name="StaticLogFileName" value="false"/> 42 <param name="DatePattern" value="yyyy-MM-dd\\yyy-MM-dd-HH".log""/> 43 <param name="RollingStyle" value="Date"/> 44 <Encoding value="UTF-8" /> 45 <layout type="log4net.Layout.PatternLayout"> 46 <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n"/> 47 </layout> 48 <!--使用最小锁定模型(minimal locking model),以允许多个进程可以写入同一个文件 --> 49 <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 50 </appender> 51 52 53 54 <appender name="TaskLog" type="log4net.Appender.RollingFileAppender"> 55 <param name="File" value="logs\TaskLog"/> 56 <param name="AppendToFile" value="true"/> 57 <param name="MaxSizeRollBackups" value="10"/> 58 <param name="StaticLogFileName" value="false"/> 59 <param name="DatePattern" value="yyyy-MM-dd\\yyy-MM-dd-HH".log""/> 60 <param name="RollingStyle" value="Date"/> 61 <Encoding value="UTF-8" /> 62 <layout type="log4net.Layout.PatternLayout"> 63 <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n"/> 64 </layout> 65 <!--使用最小锁定模型(minimal locking model),以允许多个进程可以写入同一个文件 --> 66 <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 67 </appender> 68 69 70 <appender name="TaskLog" type="log4net.Appender.RollingFileAppender"> 71 <param name="File" value="logs\TaskLog"/> 72 <param name="AppendToFile" value="true"/> 73 <param name="MaxSizeRollBackups" value="10"/> 74 <param name="StaticLogFileName" value="false"/> 75 <param name="DatePattern" value="yyyy-MM-dd\\yyy-MM-dd-HH".log""/> 76 <param name="RollingStyle" value="Date"/> 77 <Encoding value="UTF-8" /> 78 <layout type="log4net.Layout.PatternLayout"> 79 <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n"/> 80 </layout> 81 <!--使用最小锁定模型(minimal locking model),以允许多个进程可以写入同一个文件 --> 82 <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 83 </appender> 84 85 <appender name="PositionLog" type="log4net.Appender.RollingFileAppender"> 86 <param name="File" value="logs\PositionLog"/> 87 <param name="AppendToFile" value="true"/> 88 <param name="MaxSizeRollBackups" value="10"/> 89 <param name="StaticLogFileName" value="false"/> 90 <param name="DatePattern" value="yyyy-MM-dd\\yyy-MM-dd-HH".log""/> 91 <param name="RollingStyle" value="Date"/> 92 <Encoding value="UTF-8" /> 93 <layout type="log4net.Layout.PatternLayout"> 94 <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n"/> 95 </layout> 96 <!--使用最小锁定模型(minimal locking model),以允许多个进程可以写入同一个文件 --> 97 <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 98 </appender> 99 100 101 102 <appender name="PositionStatus" type="log4net.Appender.RollingFileAppender"> 103 <param name="File" value="logs\PositionStatus"/> 104 <param name="AppendToFile" value="true"/> 105 <param name="MaxSizeRollBackups" value="10"/> 106 <param name="StaticLogFileName" value="false"/> 107 <param name="DatePattern" value="yyyy-MM-dd\\yyy-MM-dd-HH".log""/> 108 <param name="RollingStyle" value="Date"/> 109 <Encoding value="UTF-8" /> 110 <layout type="log4net.Layout.PatternLayout"> 111 <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n"/> 112 </layout> 113 <!--使用最小锁定模型(minimal locking model),以允许多个进程可以写入同一个文件 --> 114 <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 115 </appender> 116 117 118 <appender name="SysShareIn" type="log4net.Appender.RollingFileAppender"> 119 <param name="File" value="logs\SysShareIn"/> 120 <param name="AppendToFile" value="true"/> 121 <param name="MaxSizeRollBackups" value="10"/> 122 <param name="StaticLogFileName" value="false"/> 123 <param name="DatePattern" value="yyyy-MM-dd\\yyy-MM-dd-HH".log""/> 124 <param name="RollingStyle" value="Date"/> 125 <Encoding value="UTF-8" /> 126 <layout type="log4net.Layout.PatternLayout"> 127 <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n"/> 128 </layout> 129 <!--使用最小锁定模型(minimal locking model),以允许多个进程可以写入同一个文件 --> 130 <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 131 </appender> 132 133 134 135 136 137 138 <!-- Level: (高) OFF > FATAL > ERROR > WARN > INFO > DEBUG > ALL (低) --> 139 <logger name="WXTASK"> 140 <priority value="DEBUG"/> 141 <appender-ref ref="rolling"/> 142 </logger> 143 144 <logger name="find_access_token"> 145 <priority value="ALL"/> 146 <appender-ref ref="find_access_token"/> 147 </logger> 148 149 150 <logger name="TaskLog"> 151 <priority value="ALL"/> 152 <appender-ref ref="TaskLog"/> 153 </logger> 154 155 156 <logger name="PositionLog"> 157 <priority value="ALL"/> 158 <appender-ref ref="PositionLog"/> 159 </logger> 160 161 162 <logger name="PositionStatus"> 163 <priority value="ALL"/> 164 <appender-ref ref="PositionStatus"/> 165 </logger> 166 167 168 169 <logger name="SysShareIn"> 170 <priority value="ALL"/> 171 <appender-ref ref="SysShareIn"/> 172 </logger> 173 174 175 176 </log4net> 177 178 179 <startup> 180 <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> 181 </startup> 182 183 </configuration>
第四步:调用
ILog Log = LogManager.GetLogger("Log");
Log.Error("45454");
浙公网安备 33010602011771号