Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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 登录ASP.NET核心主服务器_Asp.net Core_Logging_Asp.net Core Webapi - Fatal编程技术网

Asp.net core 登录ASP.NET核心主服务器

Asp.net core 登录ASP.NET核心主服务器,asp.net-core,logging,asp.net-core-webapi,Asp.net Core,Logging,Asp.net Core Webapi,我有一个ASP.NET Core 3 WebAPI,带有一个简单的Main和一个CreateHostBuilder public static void Main(String[] args) { CreateHostBuilder(args).Build().Run(); } 稍后登录我的控制器等工作正常 但是我如何才能在主日志中记录可能的错误呢?您可以使用 // Build the host and configurations var host = CreateWebHostBui

我有一个ASP.NET Core 3 WebAPI,带有一个简单的
Main
和一个
CreateHostBuilder

public static void Main(String[] args)
{
   CreateHostBuilder(args).Build().Run();
}
稍后登录我的控制器等工作正常


但是我如何才能在主日志中记录可能的错误呢?

您可以使用

// Build the host and configurations
var host = CreateWebHostBuilder(args).Build();
using (var scope = host.Services.CreateScope())
{
    // Get the registered logger service
    var logger = scope.ServiceProvider.GetRequiredService<ILogger<YourClassName>>();
    logger.LogInformation("Logger test");
}
// finally run the host 
host.Run();
//构建主机和配置
var host=CreateWebHostBuilder(args.Build();
使用(var scope=host.Services.CreateScope())
{
//获取注册的记录器服务
var logger=scope.ServiceProvider.GetRequiredService();
记录器。登录信息(“记录器测试”);
}
//最后运行主机
host.Run();

您可以使用

// Build the host and configurations
var host = CreateWebHostBuilder(args).Build();
using (var scope = host.Services.CreateScope())
{
    // Get the registered logger service
    var logger = scope.ServiceProvider.GetRequiredService<ILogger<YourClassName>>();
    logger.LogInformation("Logger test");
}
// finally run the host 
host.Run();
//构建主机和配置
var host=CreateWebHostBuilder(args.Build();
使用(var scope=host.Services.CreateScope())
{
//获取注册的记录器服务
var logger=scope.ServiceProvider.GetRequiredService();
记录器。登录信息(“记录器测试”);
}
//最后运行主机
host.Run();

另一种方法…..这种方法的优点是它是一个独立于HostBuilder的记录器,因此它可以在构建主机之前记录事情。它也可以在整个课程中使用,也可以在Program.cs的Main之外使用。缺点是它不能使用appsettings.json文件来配置它(除非有人告诉我如何配置)

公共类程序
{
//程序控制台应用程序专用记录器
专用静态ILogger_记录器;
公共静态void Main(字符串[]args)
{
//现在为程序类创建一个日志对象。
ILoggerFactory loggerFactory=loggerFactory.Create(builder=>builder
.AddConsole()
.AddDebug()
);
_logger=loggerFactory.CreateLogger();
_logger.LogInformation(“程序类>>>程序控制台类已启动…”);
}
}

另一种方法…..这种方法的优点是它是一个独立于HostBuilder的记录器,因此它可以在构建主机之前记录事情。它也可以在整个课程中使用,也可以在Program.cs的Main之外使用。缺点是它不能使用appsettings.json文件来配置它(除非有人告诉我如何配置)

公共类程序
{
//程序控制台应用程序专用记录器
专用静态ILogger_记录器;
公共静态void Main(字符串[]args)
{
//现在为程序类创建一个日志对象。
ILoggerFactory loggerFactory=loggerFactory.Create(builder=>builder
.AddConsole()
.AddDebug()
);
_logger=loggerFactory.CreateLogger();
_logger.LogInformation(“程序类>>>程序控制台类已启动…”);
}
}