Serilog 记录到工人服务 .net 核心 3.1 中的文件

Serilog logging to file in worker service .net core 3.1

我是 worker 的新手 service.I 在 .net core 3.1 中创建了 worker 服务。 参考了本教程 File logging in .Net 5 worker service using serilog. 它按预期工作,即它正在记录到文件。 现在我安装了我必须使用的服务

Microsoft.Extensions.Hosting.WindowsServices

并修改如下代码。

public static IHostBuilder CreateHostBuilder(string[] args) =>
        Host.CreateDefaultBuilder(args).ConfigureLogging(logging =>
        {
            logging.AddSerilog();
        })
       .ConfigureServices((hostContext, services) =>
        {
            services.AddHostedService<Worker>();
        }).UseWindowsService(); // This is the change i required to install as service

现在当我运行服务时,它没有记录到文件。 我错过了什么吗?

WindowsServiceSystem32 文件夹中的 运行。例如: C:\Windows\System32

您应该检查此文件夹中的日志。

或者您应该将完整路径地址添加到日志路径。