从aspnet核心应用程序到cloudwatch的详细应用程序日志

时间:2018-06-05 13:36:56

标签: asp.net-core serilog amazon-cloudwatchlogs

我在cloudwatch中的应用程序日志存在问题。

我正在使用dotnet核心和Elastic容器服务,并将cloudwatch设置为应用程序日志,但日志只输出这样的启动:

但是当我在本地运行应用程序时,应用程序日志更加详细,并显示抛出异常,如下所示: enter image description here

我使用serilog并将其设置为:

    private void ConfigureSeriLog()
    {
        Log.Logger = new LoggerConfiguration()
            .ReadFrom.Configuration(Configuration)
            .MinimumLevel.Override("Microsoft", LogEventLevel.Information)
            .MinimumLevel.Information()
            .Enrich.FromLogContext()
            .WriteTo.Console()
            .CreateLogger();
    }

    public void ConfigureServices(IServiceCollection services)
    {
        [...]
        services.AddLogging(loggingBuilder =>
            loggingBuilder.AddSerilog(dispose: true));
         [...]
    }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env, 
        ILoggerFactory loggerFactory,
        IApplicationLifetime appLifetime)
    {
        [...]
        loggerFactory.AddSerilog();
        appLifetime.ApplicationStopped.Register(Log.CloseAndFlush);
        [...]
    }

我的appsettings.json(我在这个文件中尝试了很多不同的组合):

{
  "Logging": {
    "IncludeScopes": false,
    "LogLevel": {
      "Default": "Debug",
      "System": "Information",
      "Microsoft": "Information"
    }
  }
}

这很多。但如果有人能指出我正确的方向,我会很高兴。有关如何使用cloudwatch和aspnet核心设置详细应用程序日志的任何教程或技巧将不胜感激:)

1 个答案:

答案 0 :(得分:0)

我不是该主题的专家,但是我认为您需要在loggerConfiguration中添加.WriteTo.AmazonCloudWatch(选项,客户端)。