EntityFrameworkCore 记录警告“尝试关闭已被垃圾收集的跨度。查询编译器`
Posted
技术标签:
【中文标题】EntityFrameworkCore 记录警告“尝试关闭已被垃圾收集的跨度。查询编译器`【英文标题】:EntityFrameworkCore logs warnings `Trying to close a span that was already garbage collected. QueryCompiler` 【发布时间】:2022-01-03 13:22:42 【问题描述】:我有典型的 .net5/6 Web 应用程序,它使用 EFCore 6
、.net6
、IMediator
、PostgreSQL
作为 DB。此应用程序具有简单的 API 控制器,可将执行传递给 IMediator 管道。
相当典型的应用程序和堆栈,但我看到很多来自 EFCore 的警告消息:
[11:40:07 WRN] Trying to close a span that was already garbage collected. Connection
[11:40:07 WRN] Trying to close a span that was already garbage collected. QueryExecution
[11:40:07 WRN] Trying to close a span that was already garbage collected. QueryCompiler
[11:40:07 WRN] Trying to close a span that was already garbage collected. QueryExecution
在 Google 中没有任何关于它们的内容 - 这很奇怪 - 我是第一个遇到这种情况的人吗? 这些错误不会干扰应用程序的正常运行,但它们作为警告会令人讨厌,并使日志几乎无法读取。
您认为这可能是什么以及我可以如何调查此问题?
【问题讨论】:
【参考方案1】:错误来自 EFCore 是错误的。我更改了日志模板,发现错误来自 Sentry。
16:05:24 [Warning] [Sentry.ISentryClient] Trying to close a span that was already garbage collected. QueryExecution
所以原因是在这个项目上启用了哨兵跟踪,这会导致很多这样的警告。会写的。
【讨论】:
以上是关于EntityFrameworkCore 记录警告“尝试关闭已被垃圾收集的跨度。查询编译器`的主要内容,如果未能解决你的问题,请参考以下文章
Entity Framework Core:使用 NOLOCK 读取和选择记录
如何解决 .net 核心构建错误 NETDSDK1061 和警告 MSB3277
Entity Framework Core 计数表和记录 Code-First Approach (MySQL)
来自 MYSQL 中某个范围的 Entity Framework Core 随机记录