C# 中 Serilog 的条件日志记录
Conditional logging by Serilog in C#
有一个 Asp.Net 核心项目要求,我们需要将错误、警告、信息、异常等记录到以下流中:
1) SQL 服务器 table.
2) 在记录过程中,如果SQL 服务器数据库突然不可用,我们希望通过将日志条目写入共享网络文件夹来继续记录。
3) 同样,如果在记录期间,共享网络文件夹变得不可用,那么我们要继续记录到本地文件夹。
这个场景是不是Serilog(https://serilog.net/)可以帮我们实现的?
不,这不是内置在您所描述的 Serilog 接收器中。
同时启用所有三个接收器可以实现大致相同的效果 - 如果文件 I/O 是一个问题,您可以通过写入 Serilog.Sinks.Async 来避免额外的延迟。
有一个 Asp.Net 核心项目要求,我们需要将错误、警告、信息、异常等记录到以下流中:
1) SQL 服务器 table.
2) 在记录过程中,如果SQL 服务器数据库突然不可用,我们希望通过将日志条目写入共享网络文件夹来继续记录。
3) 同样,如果在记录期间,共享网络文件夹变得不可用,那么我们要继续记录到本地文件夹。
这个场景是不是Serilog(https://serilog.net/)可以帮我们实现的?
不,这不是内置在您所描述的 Serilog 接收器中。
同时启用所有三个接收器可以实现大致相同的效果 - 如果文件 I/O 是一个问题,您可以通过写入 Serilog.Sinks.Async 来避免额外的延迟。