Asp.net core 在asp.net核心应用程序的调试窗口中显示NLog输出
是否可以显示Visual Studio 2017调试窗口中记录的NLog(或内置调试器)是什么Asp.net core 在asp.net核心应用程序的调试窗口中显示NLog输出,asp.net-core,visual-studio-2017,nlog,Asp.net Core,Visual Studio 2017,Nlog,是否可以显示Visual Studio 2017调试窗口中记录的NLog(或内置调试器)是什么 我将NLog设置为输出到文件,但对于开发来说,能够在调试窗口中查看调试消息将非常方便。我可以看到关于如何使用console执行此操作的文章,但对于asp.net项目,没有任何控制台输出,只有调试窗口。是的,对于asp.net Core,有内置的记录器提供程序,如console和debug将日志写入输出窗口 如果您使用WebHost.CreateDefaultBuilder(args),它将使用内置的提
我将NLog设置为输出到文件,但对于开发来说,能够在调试窗口中查看调试消息将非常方便。我可以看到关于如何使用console执行此操作的文章,但对于asp.net项目,没有任何控制台输出,只有调试窗口。是的,对于asp.net Core,有内置的记录器提供程序,如
console
和debug
将日志写入输出窗口
如果您使用WebHost.CreateDefaultBuilder(args)
,它将使用内置的提供程序Console
和Debug
,您可以通过输出窗口->Asp.NET Core Web Server检查输出以获得干净的结果
对于fromNLog
,它使用下面的代码清除所有其他日志提供程序
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.ConfigureLogging(logging =>
{
logging.ClearProviders();
logging.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
})
.UseNLog() // NLog: setup NLog for Dependency injection
.Build();
公共静态IWebHost BuildWebHost(字符串[]args)=>
WebHost.CreateDefaultBuilder(args)
.UseStartup()
.ConfigureLogging(日志=>
{
logging.ClearProviders();
logging.SetMinimumLevel(Microsoft.Extensions.logging.LogLevel.Trace);
})
.UseNLog()//NLog:为依赖项注入设置NLog
.Build();
如果还需要在调试窗口中登录,可以修改如下代码:
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.ConfigureLogging(logger => {
logger.AddNLog();
//logger.AddConsole(); //UnComment out this line if you did not use CreateDefaultBuilder
})
.Build();
公共静态IWebHost BuildWebHost(字符串[]args)=>
WebHost.CreateDefaultBuilder(args)
.UseStartup()
.ConfigureLogging(记录器=>{
logger.AddNLog();
//logger.AddConsole();//如果未使用CreateDefaultBuilder,请取消对此行的注释
})
.Build();
简单的解决方案就是使用OutputDebugString
-target(NetCore支持)
例如:
<targets>
<target name="debugger" xsi:type="OutputDebugString" layout="${logger}::${message}"/>
</targets>
<rules>
<logger name="*" minlevel="Trace" writeTo="debugger" />
</rules>
另一种方法可以使用xsi:type=“debugger”
: