在ASP.NET Core应用程序中,我将以下内容添加到控制器操作
System.Diagnostics.Trace.WriteLine("Wrote log at " + DateTime.Now.ToLongTimeString());
System.Diagnostics.Trace.TraceError("Wrote error log at " + DateTime.Now.ToLongTimeString());
System.Diagnostics.Trace.TraceInformation("Wrote info log at " + DateTime.Now.ToLongTimeString());
我在Azure的Application Logging (Filesystem)
菜单下启用了Diagnostic Logs
,但在Log Stream
下,我没有看到任何跟踪消息。我错过了什么吗?
更新
我使用.NET Framework(而不是.NET Core)创建了一个示例MVC应用程序,Log Stream
在我使用System.Diagnostics.Trace
输出消息时工作正常。
这是否意味着我无法在.NET Core中使用System.Diagnostics.Trace
将消息输出到Log Stream
?这适用于Visual Studio,以将消息输出到“输出”窗口。
答案 0 :(得分:1)
导航至日志流页面以查看应用程序消息。它们通过
ILogger
界面按应用程序记录。
在ASP.NET Core应用程序中,我在Controller中注入了记录器:
private readonly ILogger _logger;
public HomeController(ILogger<HomeController> logger)
{
_logger = logger;
}
现在可以在Controller动作中使用它。
_logger.LogWarning(100, "Warning using ILogger");
现在,这些日志会显示在Azure网络应用中的 Log Streaming 页面上。