我想在我的asp.net网络api(不是 Asp.Net Core)上设置日志记录,并希望确保我遵循最佳实践(尽可能地接近)。我在我的服务中使用SeriLog,也希望将此产品用于我的Web Api。我不确定在Web API中设置日志记录的最佳方法,并且我希望对其进行设置,以便根据上下文(我的api服务于多个应用程序),我希望能够登录到单独的Microsoft Sql Server 。有人可以提供一些指导,说明如何开始执行此任务,可能出现的陷阱或我尚未找到如何在Asp.Net中进行设置的文章的链接吗?
答案 0 :(得分:0)
有一个来自Serilog(MSSQL-Server)的图书馆
答案 1 :(得分:0)
您可以创建一个集中式记录器项目,并将serilog程序包仅添加到该项目,并在需要使用serilog(您的服务)的地方引用该项目。
并使用Serilog.Settings.AppSettings软件包配置serilog,以便每个服务项目都可以使用{{1}从服务<appSettings>
的{{1}}部分中读取其自己的配置(例如:单独的Microsoft SQL Server) } web.config
采样记录器类
ReadFrom.AppSettings()
示例LoggerConfiguration
配置
public static class Logger
{
private static readonly ILogger _dbLogger;
static Logger()
{
_dbLogger = new LoggerConfiguration()
.ReadFrom.AppSettings()
.CreateLogger();
}
public static void Log(string error)
{
_dbLogger.Error(error);
}
}