我用log4net开发了windows服务来记录异常。
这是我的app.config文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,Log4net"/>
</configSections>
</configuration>
<log4net>
<root>
<level value="Error" />
<appender-ref ref="RollingLogFileAppender" />
</root>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="C:\\windowslogfile.txt"/>
<appendToFile value="true" />
<rollingStyle value="Composite" />
<maxSizeRollBackups value="14" />
<countDirection value="1" />
<maximumFileSize value="4096KB" />
<lockingModel type="log4net.Appender.FileAppender.MinimalLock" />
<staticLogFileName value="true" />
<PreserveLogFileNameExtension value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%newlineDate[%date] ThreadID[%thread] Level[%-5level] Logger[%logger]] - %message%newline" />
</layout>
</appender>
</log4net>
<appSettings>
<add key="Service1" value="Te.Service"/>
<add key="Service2" value="CaseWorksCachingServiceme"/>
<add key="Service2" value="CaseWorksCachingService"/>
</appSettings>
</configuration>
嗨,我无法正常运行Windows服务。日志文件中记录的错误是
配置系统无法初始化。
答案 0 :(得分:0)
您的appsettings中有一个重复的键,即Service2
答案 1 :(得分:0)
配置系统无法初始化
我怀疑您的Windows服务无权访问 C:\ windowslogfile.txt
或者:
为运行该服务的服务帐户授予此文件夹相应的权限,或者
只需删除log4net。
答案 2 :(得分:0)
您有<configuration>
作为父标记和子标记,Witch不正确。
删除子<configSections>
代码,直接在父代中添加<configSections>
,如下所示,
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
...
</configSections>
</configuration>
似乎是Copy&amp; Pest错误。