[英]ASP.NET Core Application Logs Not Written To Blob in Azure App Service
我为 Azure 上的应用服务启用了应用程序日志记录到 blob。
xxxxx-#####.applicationLog.csv
文件,但该文件实际上并不包含我的应用程序日志配置详情:
Program.cs
配置日志记录: .ConfigureLogging(log => log.AddAzureWebAppDiagnostics())
(这在 .NET Framework 而不是 .NET Core 运行时运行时显然是必要的)总结:当我在 Azure 门户中以这种方式配置 Azure 存储时,不会在 Azure 存储中创建包含我的应用程序日志的文件。
如果要将应用程序日志写入 Azure blob 存储,首先需要在 Azure 门户上启用应用程序日志并为其配置 blob 存储。
我们可以按照博客在 Asp.net 核心应用程序中设置日志记录。
在 ASP.NET Core 应用中设置登录不需要太多代码。 ASP.NET Core 新项目模板已经在 Startup.Configure 方法中使用以下代码设置了一些基本的日志记录提供程序:
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();
我也为它做演示。 它在我这边工作正常。
1.在Sartup.cs文件中添加如下代码
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();
loggerFactory.AddAzureWebAppDiagnostics(
new AzureAppServicesDiagnosticsSettings
{
OutputTemplate = "{Timestamp:yyyy-MM-dd HH:mm:ss zzz} [{Level}] {RequestId}-{SourceContext}: {Message}{NewLine}{Exception}",
}
);
2.在HomeController.cs中添加如下代码
private readonly ILogger _logger;
public HomeController(ILoggerFactory loggerFactory)
{
_logger = loggerFactory.CreateLogger<HomeController>();
}
public IActionResult Index()
{
_logger.LogInformation("Log information");
_logger.LogError("Logger error");
return View();
}
3.访问主页/索引页面并从 Azure 存储 blob 中检查它。 日志 blob 名称的最后一部分。 默认为“ applicationLog.txt ”。 我们也可以自己设置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.