關閉 EF Core 6.0 Log資訊

在.Net 6 並配合NLog使用,EF Core預設會啟動紀錄EF產生的資訊包含SQL語法,而在.Net 5則是需要加入指令才能開啟

系統需要架設在Azure上,並有機會下載Log檔

在同事的建議下,希望可以精簡Log檔案內容,畢竟Azure上很多服務都需要收費

所以仔細看了一下Log檔案中,那些不屬於規畫內的Log紀錄,並試圖找尋關閉的方法

最多的Log資料都屬於EF Core產生出來資訊

做法很簡單,進入appsettings修改Logging:LogLevel即可

增加了"Microsoft.EntityFrameworkCore": "Warning"

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.EntityFrameworkCore": "Warning"
    }
  }
}

如果使用Net 5則沒有這個煩惱(預設沒有啟用),但相反的,在Net5上要使用的話,則需增加"Microsoft.EntityFrameworkCore": "Information"

Net 5可以參考保哥的此篇文章