是用于控制日志记录的 Azure Web Job 配置



我正在试验WebJobs。我在Visual Studio 2015中创建了一个新的WebJob项目。这是代码:

public class Program
{
    // Please set the following connection strings in app.config for this WebJob to run:
    // AzureWebJobsDashboard and AzureWebJobsStorage
    public static void Main()
    {
        JobHostConfiguration config = new JobHostConfiguration();
        config.Tracing.ConsoleLevel = TraceLevel.Info;
        Environment.SetEnvironmentVariable("AzureWebJobsEnv", "Development");
        if(config.IsDevelopment)
        {
            config.UseDevelopmentSettings();
        }
        config.UseTimers();
        JobHost host = new JobHost(config);
        host.RunAndBlock();
    }
}
public class Functions
{
    public static void GetMarketData([TimerTrigger("00:00:01")] TimerInfo timer, TextWriter log)
    {
        //log.WriteLine($"Market data retrieved at {DateTime.Now.ToString("yyMMdd HH:mm:ss")}");
    }
}

如您所见,我正在使用计时器扩展,以便每秒调用一次该函数。

当我在本地运行它时(并在 Azure 上假设也是如此(,即使我已经注释掉了日志。WriteLine 在函数中,有在我创建的存储帐户上创建的日志。有输出日志,文件显示空文本,也有主机日志,有函数信息。

想象一下,每秒每个日志都有一个。如何阻止写入这些日志?

请尝试将

仪表板连接字符串设置为 null,如以下示例所示,以禁用日志记录。

var config = new JobHostConfiguration();
config.DashboardConnectionString = "";
config.UseTimers();
var host = new JobHost(config);
host.RunAndBlock();

相关内容

  • 没有找到相关文章

最新更新