相关疑难解决方法(0)

Serilog :选择在运行时记录哪个接收器

我将在 .net 标准 2.0 库中实现 Serilog。我正在寻找一种方法来选择每个日志行应使用哪个接收器。

假设我们在配置中定义了 2 个接收器(控制台和文件):

    Log.Logger = new LoggerConfiguration()
        .MinimumLevel.Debug()
        .WriteTo.Console()
        .WriteTo.File("c:\\temp\\SerilogTets.txt")
        .CreateLogger();
Run Code Online (Sandbox Code Playgroud)

之后,我们将编写一条日志规则:

Log.Information("Hello, world!");  //<- how can we define which sink we want to use
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种方法来定义应记录哪些接收器的这些行:

  • 控制台和文件
  • 仅控制台
  • 仅文件

不依赖于它是什么日志级别。

先感谢您!

亲切的问候,库尔特

c# sink serilog .net-standard

12
推荐指数
1
解决办法
6684
查看次数

带有类名、方法名的 Serilog 日志记录

我在我的项目 Angular、web api、EF 中使用了 serilog 和 SEQ。我对两者都是新手。

1) 如何确保每次我写错误、信息、调试时都应该包含 ClassName.Method Name。我知道我必须创建 Enrich 但不确定如何获取 ClassName.Method Name

例如

Class Test
{
  public void testing(){
  // logger.Error("Error ....");}
}
Run Code Online (Sandbox Code Playgroud)

现在,当我看到日志时,它应该显示“29/09/2012 10:00:00, Test=>testing Error .....”

在,短 DateTime、ClassName、MethodName 和 Message

logging serilog

6
推荐指数
1
解决办法
4896
查看次数

标签 统计

serilog ×2

.net-standard ×1

c# ×1

logging ×1

sink ×1