0
public class Program
{

private static readonly log4net.ILog Log = log4net.LogManager.GetLogger(
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

    static void Main()
    {
        log4net.Config.XmlConfigurator.Configure();
        try
        {
            MainA().Wait();
        }
        catch (Exception ex)
        {
            Log.ErrorFormat("Failed to Delete Data, Error: {0}, Stack Trace {1}, Inner Exception {2}", ex.Message, ex.StackTrace, ex.InnerException);
        }
    }

    public static async Task MainA()
    {
        Log.InfoFormat("Service started at {0}", DateTime.UtcNow);
        WebJobService srv = new WebJobService();
        await srv.DeleteData();
        Log.InfoFormat("Service ended at {0}", DateTime.UtcNow);

    }
}

应用程序配置

<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />

请检查上面的代码。当我们在服务器上进行部署时,它只写入一次日志,之后它没有在 MyLogs.txt 文件中写入任何日志。

4

1 回答 1

0

当我们在服务器上进行部署时,它只写入一次日志,之后它没有在 MyLogs.txt 文件中写入任何日志。

我测试了你的代码,我D:\home\site\wwwroot\app_data\jobs\continuous\{WebjobName}\logs在 KUDU 下找到了我的日志文件。

在此处输入图像描述

此外,如果您要使用自定义路径,您可以像这样设置文件值:

<file value="D:\home\data\logs\log.log" />

您也可以在 KUDU 中找到它。 在此处输入图像描述

App.config文件如下,可以参考。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>

  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net "/>
  </configSections>
  <log4net>
    <appender name="FileAppender" type="log4net.Appender.FileAppender,log4net">
      <file value="./logs/log.log" />
      <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="INFO" />
        <levelMax value="FATAL" />
      </filter>
    </appender>
    <root>
      <level value="ALL"/>
      <appender-ref ref="FileAppender"/>
    </root>
  </log4net>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
  </startup>
</configuration>
于 2018-01-29T02:03:08.870 回答