我正在尝试使用serilog将日志写入MsSql服务器。我的应用程序是.Net Core 2.1控制台应用程序。我正在使用Serilog MsSql接收器
我已经使用以下sql命令创建了一个表
CREATE TABLE [Logs] (
[Id] int IDENTITY(1,1) NOT NULL,
[Message] nvarchar(max) NULL,
[MessageTemplate] nvarchar(max) NULL,
[Level] nvarchar(128) NULL,
[TimeStamp] datetimeoffset(7) NOT NULL, -- use datetime for SQL Server pre-2008
[Exception] nvarchar(max) NULL,
[Properties] xml NULL
CONSTRAINT [PK_Logs]
PRIMARY KEY CLUSTERED ([Id] ASC)
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
ON [PRIMARY]
) ON [PRIMARY];
我的C#代码:
static void Main(string[] args)
{
try
{
Serilog.Debugging.SelfLog.Enable(msg => Debug.WriteLine(msg));
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.MinimumLevel.Override("Microsoft", LogEventLevel.Information)
.Enrich.FromLogContext()
.WriteTo.MSSqlServer("Server=xyz;Database=abc;Trusted_Connection=True;", "Logs")
.CreateLogger();
Log.Information("Hello");
}
catch (Exception ex)
{
throw;
}
}
我的问题是serilog也没有写入数据库,也没有显示任何错误。我尝试使用Ado.Net进行连接和插入,但是使用serilog无法正常工作。我想念的是什么?
答案 0 :(得分:1)
只有一行解决了我的问题。
SELECT g.groupId,g.name FROM c
join g in c.groups