2017-08-29 103 views
0

我有一个部署在Microsoft Azure上的.Net Core 2.0 Web服务。在我的应用程序中,我使用Azure Web App Diagnostics将日志存储在Blob存储中。如何修改Azure Web App的Blob存储路径诊断日志

日志文件按小时分割。目前,blob文件路径将与{year}/{month}/{date}/{hour}/{filename}类似。每个小时都有一个新文件夹。

我想更改此存储路径并将每日日志存储在一个文件中。我正在使用LoggerFactory进行日志记录。我已经添加了AzureWebAppDiagnostics配置方法Startup.cs

loggerFactory.AddAzureWebAppDiagnostics(
      new AzureAppServicesDiagnosticsSettings 
      { 
       OutputTemplate = "{Timestamp:yyyy-MM-dd HH:mm:ss zzz} [{Level}] {RequestId}-{SourceContext}: {Message}{NewLine}{Exception}" 
      } 
      ); 

据我所知,有记录,如使用NLOG或SeriLog的其他方法,但没有任何现成的路做我上面提到的?

回答

1

当前blob文件路径类似于{year}/{month}/{date}/{hour}/{filename}。每个小时都有一个新文件夹。我想更改此存储路径并将每日日志存储在一个文件中。

我检查了class AzureAppServicesDiagnosticsSettings,发现它只是使我们能够指定日志BLOB名称的最后一节,它并没有使得我们可以指定Blob的全名。

// 
// Summary: 
//  Gets or sets the last section of log blob name. Defaults to "applicationLog.txt". 
public string BlobName { get; set; } 

您可以open an issue并跟踪状态。另外,正如您所提到的,您可以集成NLog等来将日志写入Azure存储。

相关问题