【发布时间】:2019-10-23 23:24:54
【问题描述】:
我正在尝试最大程度地减少从 .NET Core 应用程序将日志写入 SQL Server 的性能影响。
过去,我将 Serilog File 接收器包裹在 Async 接收器中 - 这极大地提高了性能。
SQL Server sink documentation 声明它会定期和/或在达到batchPostingLimit 时批处理日志条目。我找不到任何关于当它决定发出INSERT 命令时会发生什么的信息。
它是否与调用Logger.Log(...) 的代码异步发生?如果没有,将 SQL Server Serilog 接收器包装在 Async 中是否有意义?
【问题讨论】:
-
SQL Server Profiler 可以告诉你:docs.microsoft.com/en-us/sql/tools/sql-server-profiler/… 也可能是 Visual Studio IntelliTrace docs.microsoft.com/en-us/visualstudio/debugger/…
标签: c# sql-server .net-core serilog