Asp.net
Asp.net 核心 + IIS Express。如何查看日誌消息?
我正在嘗試以這種方式在 ASP.NET Core 中列印日誌消息:
Console.WriteLine( "Hello World!" ); loggerFactory.MinimumLevel = LogLevel.Debug; loggerFactory.AddConsole( LogLevel.Debug ); var logger = loggerFactory.CreateLogger("Startup"); logger.LogWarning( "Hi!" );我在哪裡可以看到這條消息?
輸出視窗不包含此消息。
如果我將項目作為 Web 執行,它會執行
dnx我可以看到消息的控制台,但這並不方便。如果我將項目作為 IIS Express 執行,我看不到控制台或消息。
有沒有辦法在 Visual Studio 中查看消息?
您可以使用
Debug偵聽器來實現您想要的:"dependencies": { "Microsoft.Extensions.Logging.Debug": "1.0.0-rc1-final" }Console.WriteLine( "Hello World!" ); loggerFactory.MinimumLevel = LogLevel.Debug; loggerFactory.AddDebug( LogLevel.Debug ); var logger = loggerFactory.CreateLogger("Startup"); logger.LogWarning( "Hi!" );
IIS Express 不會將其日誌輸出到 Visual Studio 的輸出視窗。
您需要使用不同的日誌提供程序。
將其寫入日誌文件。您可以為此使用庫,例如Serilog:
using Serilog; public class Startup { public Startup(IHostingEnvironment env) { Log.Logger = new LoggerConfiguration() .WriteTo.File("log.txt") .CreateLogger(); ... public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) { loggerFactory.AddSerilog();你需要這個 NuGet包。