【问题标题】:Serilog Exceptionless Sink in .NET Core 1.1.NET Core 1.1 中的 Serilog 无异常接收器
【发布时间】:2017-02-10 04:57:25
【问题描述】:

Serilog Exceptionless Sink 如何与 .NET Core 1.1 一起使用?

Serilog.Sinks.Exceptionless README 不清楚,不适用于 .NET Core 1.1,我将配置放在 appsettings.json 文件中。

{
  "Serilog": {
    "Using": ["Serilog.Sinks.Literate"],
    "MinimumLevel": ["Debug"],
    "WriteTo": [{
      "Name": "LiterateConsole"
    }],
    "Enrich": ["FromLogContext"],
    "Properties": {
      "Application": "MyAppServer"
    }
  }
}

程序.cs

public class Program
{
    public static void Main(string[] args)
    {
        Log.Logger = new LoggerConfiguration()
            .ReadFrom.Configuration(config)
            .CreateLogger();
    }
}

我显然也需要在某处设置 API 密钥。

谁能提供一个关于如何配置的清晰描述,好吗?

【问题讨论】:

  • 我从事该项目并管理水槽。我很好奇 serilog sink 是如何为你工作的?
  • 水槽在原型中运行良好,但我不再参与该项目,抱歉。

标签: serilog asp.net-core-1.1 exceptionless


【解决方案1】:

在 JSON 中,您可以向 "WriteTo" 列表添加额外的接收器,并在 "Args" 块中添加类似 apiKey 的参数:

{
  "Serilog": {
    "Using": ["Serilog.Sinks.Literate"],
    "MinimumLevel": ["Debug"],
    "WriteTo": [{
      "Name": "LiterateConsole"
    }, {
      "Name": "Exceptionless",
      "Args": { apiKey: "12345" }
    }],
    "Enrich": ["FromLogContext"],
    "Properties": {
      "Application": "MyAppServer"
    }
  }
}

【讨论】:

    【解决方案2】:

    我觉得是

    Log.Logger = new LoggerConfiguration()
        .WriteTo.Exceptionless(
            apiKey: "yourApiKey", 
            additionalOperation: b => b.AddTags("ASP.NET Core Example Logger"))
        .CreateLogger();
    

    【讨论】:

      猜你喜欢
      • 2021-08-12
      • 1970-01-01
      • 2018-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多