Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core 使用nlog时日志文件中不显示日志_Asp.net Core_.net Core_Nlog - Fatal编程技术网

Asp.net core 使用nlog时日志文件中不显示日志

Asp.net core 使用nlog时日志文件中不显示日志,asp.net-core,.net-core,nlog,Asp.net Core,.net Core,Nlog,我正在将NLog与.net Core 3.1一起使用。我试图在控制器中打印调试语句,其中ILogger的注入方式如下: public MyController(ILogger<MyController> logger) { this.logger = logger; } [HttpGet)] public ActionResult<List<MyObject>> GetObjects()

我正在将NLog与.net Core 3.1一起使用。我试图在控制器中打印调试语句,其中ILogger的注入方式如下:

public MyController(ILogger<MyController> logger) {
                this.logger = logger;
    }

[HttpGet)]
        public ActionResult<List<MyObject>> GetObjects()
        {
            logger.LogDebug("helloworld");
}

我猜你应该检查你的appsettings.Development.json。在此文件中,您可以选择以下选项:
“默认值”:“信息”

如果您想接收
“Debug”
日志,您应该将其更改为

“默认”:“跟踪”


在appsettings.Development.json.

中,我猜NLog.config中缺少的
-根元素在复制粘贴中是错误的。但是典型的错误是忘记为
NLog.config
-文件设置“如果更新就复制”。另请参阅:在遵循故障排除指南后,是否有任何错误详细信息?您好@Julian,谢谢您的回复。是的,我一看导游就知道了细节。
public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                })
                .ConfigureLogging(logging =>
                {
                    logging.ClearProviders();
                    logging.SetMinimumLevel(LogLevel.Debug);
                })
                .UseNLog();  // NLog: Setup NLog for Dependency injection
<targets>
    <!-- write logs to file  -->
    <target xsi:type="File" name="allfile" fileName="c:\logs\nlog-all-${shortdate}.log"
            layout="${callsite} -${longdate}|${event-properties:item=EventId_Id}|${uppercase:${level}}|${logger}|${message} ${exception:format=tostring}" />

    <!-- another file log, only own logs. Uses some ASP.NET core renderers -->
    <target xsi:type="File" name="ownFile-web" fileName="c:\logs\nlog-own-${shortdate}.log"
            layout="${callsite} -${longdate}|${event-properties:item=EventId_Id}|${uppercase:${level}}|${logger}|${message} ${exception:format=tostring}|url: ${aspnet-request-url}|action: ${aspnet-mvc-action}" />
  </targets>

   <!--rules to map from logger name to target--> 
  <rules>
    <logger name="*" minlevel="Debug" writeTo="allfile" />        
  </rules>
"Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "Default": "Trace",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },