[英].net core console app - serilog write to bin/debug folder
我正在使用 .net5 控制台應用程序並將 serilog 設置為記錄到 Logs/log.txt,但不是寫入 rootFolder/Logs/log.txt,而是寫入到 bin/debug 文件夾。
編輯:我附上代碼:
在 appsettings.json 它看起來像這樣:
{
"Name": "File",
"Args": {
"path": "Logs\log.txt",
}
}
程序.cs
static void Main(string[] args)
{
var configuration = new ConfigurationBuilder()
.AddJsonFile("appSettings.json", true, true)
.Build();
var serviceCollection = new ServiceCollection()
.AddLogging(builder => builder.AddSerilog(
new LoggerConfiguration()
.ReadFrom.Configuration(configuration)
.CreateLogger()))
.BuildServiceProvider();
var logger = serviceCollection.GetService<ILogger<Program>>();
logger.LogInformation("hello from Serilog");
Console.ReadLine();
}
有什么想法嗎?
在 program.cs 文件中試試這個
Log.Logger = new LoggerConfiguration()
.Enrich.FromLogContext()
.Enrich.WithProperty("Application", "MyApp")
.MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
.MinimumLevel.Override("System", LogEventLevel.Warning)
.WriteTo.File("Logs/log.log",
outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level:u3}] {Message:lj}{NewLine}{Exception}",
rollingInterval: RollingInterval.Hour)
.CreateLogger();
和 appsettings 文件
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.