SQL Jobs or log4net Task Scheduler does not write a log file

I am writing a console application with log4net, my log4net configuration is below

<?xml version="1.0" encoding="utf-8" ?>
<log4net>
  <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender" >
    <file value="Process_Log\" />
    <appendToFile value="true" />
    <datePattern value="yyyy-MM-dd.TXT" />
    <maxSizeRollBackups value="10" />
    <rollingStyle value="Date" />
    <maximumFileSize value="10MB" />
    <staticLogFileName value="false" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %p %message [%logger] %n" />
    </layout>
  </appender>

  <root>
    <level value="ALL" />
    <appender-ref ref="RollingLogFileAppender" />
  </root>
</log4net>

Run the console application, it has output log files. But to use SQL Server Agent Jobs or Windows Task Scheduler cause it, It did not write a log file.

+4
source share
2 answers

. Visual Studio, log4net "bin". , . Windows, . Windows "C:\Windows\System32". Windows "C:\Windows\System32".

log4net. - "LogConfiguration.config".

 var log4NetConfigDirectory =
       AppDomain.CurrentDomain.RelativeSearchPath ?? AppDomain.CurrentDomain.BaseDirectory;
 var log4NetConfigFilePath = Path.Combine(log4NetConfigDirectory, "LogConfiguration.config");
 log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(log4NetConfigFilePath));

>

+8

user3626918 ( ). :

  • " " (- > - > ...)

  • , , , .

+2

All Articles