EF Core使用Simple Logging输出日志
生活随笔
收集整理的這篇文章主要介紹了
EF Core使用Simple Logging输出日志
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在使用EF Core的時(shí)候,很多時(shí)候需要知道EF Core實(shí)際執(zhí)行的SQL語句是什么。
Simple Logging是EF Core提供的一項(xiàng)功能,可用于在開發(fā)和調(diào)試應(yīng)用程序時(shí)輕松獲取日志。這種形式的日志記錄需要最少的配置,而不需要其他NuGet包。
功能一瞥
配置起來非常簡單,只需在DbContext.OnConfiguring實(shí)現(xiàn)中調(diào)用LogTo方法即可:
public?class?DefaultDbContext?:?DbContext {protected?override?void?OnConfiguring(DbContextOptionsBuilder?options){...options.LogTo(Console.WriteLine);}... }LogTo需要一個(gè)Action委托接受字符串,比如Console.WriteLine,你也可以編寫自定義方法決定如何輸出日志。
篩選
默認(rèn)情況下,Simple Logging記錄Debug或更高級(jí)別的每條日志。這樣會(huì)導(dǎo)致輸出的日志過多,對(duì)調(diào)試沒有任何幫助,可以限制只記錄Information或更高級(jí)別的日志:
options.LogTo(Console.WriteLine,?Microsoft.Extensions.Logging.LogLevel.Information);查詢標(biāo)記
但是,這樣還是會(huì)產(chǎn)生很多日志。這時(shí)我們可以結(jié)合查詢標(biāo)記,幫助我們快速定位到需要的日志:
?var?users?=?context.User.TagWith("查詢所有用戶").ToList();如果覺得這篇文章對(duì)你有所啟發(fā),請關(guān)注我的個(gè)人公眾號(hào)”My IO“,記住我!
總結(jié)
以上是生活随笔為你收集整理的EF Core使用Simple Logging输出日志的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 记一次 .NET 某流媒体独角兽 API
- 下一篇: 写给80后,我们的人生才刚刚开始