如何控制和维护Azure Web作业控制面板日志记录?

时间:2016-03-22 17:11:15

标签: azure azure-webjobs

我在系统中使用azure web作业来处理通过排队等待以后处理的Web服务实时接收的xml数据。一些webjob函数以相当高的频率(每分钟100次)调用。当我第一次尝试系统时,记录似乎表现良好。但是现在几周之后,大量的日志数据已经累积,它似乎停止更新并且相当频繁地显示“正在处理索引”。

  1. 如何“清除”或清除日志?
  2. 我是否可以选择关闭经常更新的作业的日志记录?如何实现这一目标?
  3. 我的网络工作是连续的,并使用c#api。我的问题与Azure webjobs output logs indexing taking very long不一样,虽然这个答案也很相关 - 我特别询问如何清除日志并有选择地关闭日志。

    Azure web jobs control panel logging

1 个答案:

答案 0 :(得分:1)

  1. 您可以在WebJob中配置AzureWebJobsStorage应用程序设置或连接字符串。日志存储在此存储帐户的Blob存储中。您应该能够在那里手动清除它们。

  2. 假设您使用的是Azure WebJobs SDK,则可以插入自定义记录器

    JobHostConfiguration config = new JobHostConfiguration();
    config.Tracing.Tracers.Add(new CustomTraceWriter(TraceLevel.Info));
    JobHost host = new JobHost(config);
    host.RunAndBlock();
    

    CustomTraceWriter可以将所有写入包含在应用程序设置的检查中

  3.     if(CloudConfigurationManager.GetSetting("EnableWebJobLogging"))
        {
        ....
        }