Windows 서비스를 만들었으며 Windows 서비스가 내 사용자 프로필 아래에 만들어진 로그 파일에 정보를 기록하도록합니다. common.logging을 사용하고 있습니다. 내 로그 설정을 다음과 같이 지정했습니다.Windows 서비스가 로그 파일에 특수 폴더로 로그인하지 않습니다.
<configSections>
<section name="quartz" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4net1213">
<arg key="configType" value="INLINE" />
</factoryAdapter>
</logging>
</common>
<log4net>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%d [%t] %-5p %l - %m%n" />
</layout>
</appender>
<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%d [%t] %-5p %l - %m%n" />
</layout>
</appender>
<appender name="FileAppender" type="log4net.Appender.FileAppender,log4net">
<file value="${USERPROFILE}\Logs\Log.txt"/>
<appendToFile value="true"/>
<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %level %logger - %message%newline"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="DEBUG"/>
<levelMax value="FATAL"/>
</filter>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="FileAppender" />
<appender-ref ref="EventLogAppender" />
</root>
</log4net>
그러나 Windows 서비스는 사용자 프로필 아래에 만든 로그 파일에 로그인하지 않습니다. 서비스는 로컬 시스템 계정에서 실행됩니다. 문제에 대한 리드를 얻고 싶습니다 .event 로그는 파일 appender가 작동하지 않는 경우에만 올바르게 작동합니다.
권한 설정이 - 실제로 이상한 동작임을 확인했다고 가정합니다. –