Dotnet core Serilog write to kafka does not use appsettings.json

Viewed 37

I am creating a kafka log writer using Serilog in .NET Core 6 application. My program.cs settings are following.

builder.Logging.ClearProviders();

var logger = new LoggerConfiguration()
    .WriteTo.Kafka()
    .WriteTo.Console()
    .CreateLogger();

builder.Logging.AddSerilog(logger);

When I run the application, it writes logs in a logs topic. But my appsettings.json file is like following. The logs topic created automatically.

{
  "Serilog": {
    "MinimumLevel": {
      "Default": "Debug",
      "Override": {
        "Microsoft": "Warning",
        "System": "Warning"
      }
    },
    "WriteTo": [
      {
        "Name": "Kafka",
        "Args": {
          "batchSizeLimit": "50",
          "period": "5",
          "bootstrapServers": "localhost:9092",
          "topic": "my-custom-topic"
        }
      }
    ]
  }
}

my appsettings.json is not used. How can I solve this problem?

0 Answers
Related