我对 .net Framework 4.8 的 Serilog 支持有点困惑
我想实现serilog用于登录.net Framework 4.8 asp.net webapi,但是我没有找到任何有用的文章,包括serilog官方文档。
我想在.net Framework 4.8中实现serilog数据库日志记录
之前我已经在.net 6版本中实现了serilog并且它正在工作现在我想在针对.net框架4.8的webapi中实现serilog数据库日志记录
指导我。
是的,它正在 .net Framework 4.8 上运行,这确实让我很困难。 这是我所做的,我可以看到这些实现的日志消息。
您需要从 NuGet 管理器安装 Serilog.Sinks.Seq 库,并将以下代码添加到您的 packages.config 中。
<package id="Serilog" version="2.12.0" targetFramework="net48" />
<package id="Serilog.Formatting.Compact" version="1.1.0" targetFramework="net48" />
<package id="Serilog.Sinks.Console" version="4.1.0" targetFramework="net48" />
<package id="Serilog.Sinks.PeriodicBatching" version="3.1.0" targetFramework="net48" />
<package id="Serilog.Sinks.PeriodicBatching" version="3.1.0" targetFramework="net48" />
<package id="Serilog.Sinks.Seq" version="5.2.2" targetFramework="net48" />
在 web.config 中
<?xml version="1.0" encoding="utf-8"?>
...
<appSettings>
...
<add key="SeqFolder" value="the url or file path that you want to store the logger" />
...
在 Global.asax.cs 中
var log = new LoggerConfiguration().WriteTo.Seq(System.Configuration.ConfigurationManager.AppSettings["SeqFolder")
.MinimumLevel.Information().CreateLogger();
Log.Logger = log;
log.Information("This will show as soon as your application is running!");
这是关于如何在应用程序中、在代码中的任何位置(例如控制器)使用它,您只需要使用以下代码来开始记录您想要记录的任何内容。
Log.Logger.Information("You are welcome! :) ");
我尝试使用 Sinks.Seq 发送日志,但它没有记录也没有给我任何错误。你能帮忙吗?
var levelSwitch = new LoggingLevelSwitch();
Log.Logger = new LoggerConfiguration()
.WriteTo.Seq(endpoint, apiKey: "abcd",
controlLevelSwitch: levelSwitch)
.MinimumLevel.Error().CreateLogger();