.NET 6 Serilog進階範例
目的
讀取appsetting設定檔
二階段初始化
為了簡單化故將Log存入SQLite
建立新專案
選擇ASP.NET Core Web API專案範本,並執行下一步 
設定新的專案
命名你的專案名稱,並選擇專案要存放的位置。 
其他資訊
直接進行下一步 
NuGet加入套件
Serilog.AspNetCore
Serilog.Sinks.SQLite

編輯Program.cs檔

編輯appsetting.json
設定Serilog,包含
最低紀錄標準為Information
Microsoft.AspNetCore開頭類別紀錄標準為Warning
寫Log檔到console
寫Log檔到File,並請用日期分割檔案
寫Log檔到SQLite,資料表名稱為Logs,限制DB最大為1M,預設還有一個參數rollOver為true,當達到限制,就會分割DB

編輯WeatherForecastController.cs類別檔

執行結果
F5執行後,依照下列步驟操作,並確認結果 

執行後查看Log檔 

點擊txt檔案後會看到我們所寫的Log檔案,會發現
第一個紅框處非匿名類型多一個$type跟你說明是什麼類型
第二個紅框處是由於在Program.cs加入了app.UseSerilogRequestLogging();會記錄使用Get請求呼叫了WeatherForecast回傳狀態碼200用了31ms的時間

參考
範例檔
Last updated