Как настроить serilog-sinks-slack в appsettings.json - PullRequest
0 голосов
/ 14 мая 2019

Я пытаюсь настроить serilog в своем основном приложении asp.net, и я могу настроить его, используя конфигурацию запуска, но я не могу сделать это на appsettings.json.Когда я делаю:

Я использую этот приемник:

https://github.com/mgibas/serilog-sinks-slack

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
        {
Logger log = new LoggerConfiguration()
                .MinimumLevel.Verbose()
                .WriteTo.Slack(new SlackSinkOptions()
                {
                    WebHookUrl = "https://hooks.slack.com/services/xxx/yyy/zzz",
                    CustomChannel = "@myuser"
                }).CreateLogger();
    loggerFactory.AddSerilog(log);

Он работает нормально, и я могу видеть сообщения в моем слабом канале.Затем я пытаюсь перенести его в настройки своего приложения, чтобы изменить его на следующее:

Logger log = new LoggerConfiguration()
.MinimumLevel.Verbose()
.ReadFrom.Configuration(Configuration)
.CreateLogger();

и с appconfig:

{
  "Serilog": {
    "MinimumLevel": "Debug",
    "WriteTo": [
      {
        "Name": "Slack",
        "SlackSinkOptions":
        {
          "WebHookUrl": "https://hooks.slack.com/services/xxx/yyy/zzz",
          "CustomChannel": "@myuser"
        }
      }
    ]
  },
  "AllowedHosts": "*"
}

Но он ничего не пишет в слабом виде.Я также пытался:

{
  "Serilog": {
    "MinimumLevel": "Debug",
    "WriteTo": [
      {
        "Name": "Slack",
        "WebHookUrl": "https://hooks.slack.com/services/xxx/yyy/zzz",
        "CustomChannel": "@myuser"

      }
    ]
  },
  "AllowedHosts": "*"
}

Есть какие-нибудь подсказки, что такое моя конфигурация / настройка?

1 Ответ

0 голосов
/ 16 мая 2019

Ах! Я должен был использовать Args вместо Options, как Hugo , упомянутый в комментариях

{
  "Serilog": {
    "MinimumLevel": "Debug",
    "WriteTo": [
      {
        "Name": "Slack",
        "Args":
        {
          "WebHookUrl": "https://hooks.slack.com/services/xxx/yyy/zzz",
          "CustomChannel": "@myuser"
        }
      }
    ]
  },
  "AllowedHosts": "*"
}
...