我们的应用程序正在使用azure application insights。我读到的是,使用applicationinsights端到端跟踪,我们甚至可以得到在数据库中执行的查询以及该查询所用的时间。
但如屏幕截图所示,azure app insights向我显示,有3个对数据库的调用,但不是在这些调用中对数据库执行的实际查询。
我需要知道的是,为了得到针对数据库执行的查询,我需要做什么?
我们的应用程序正在使用azure application insights。我读到的是,使用applicationinsights端到端跟踪,我们甚至可以得到在数据库中执行的查询以及该查询所用的时间。
但如屏幕截图所示,azure app insights向我显示,有3个对数据库的调用,但不是在这些调用中对数据库执行的实际查询。
我需要知道的是,为了得到针对数据库执行的查询,我需要做什么?
2条答案
按热度按时间1tu0hz3e1#
是的,application insights可以跟踪sql查询。但请注意,application insights nuget包的最新版本中有一些更改,这使得它不会自动跟踪sql查询。
您可以通过下面的解决方法来完成。
假设你用的是
.net core
web项目。然后你需要降低Microsoft.ApplicationInsights.AspNetCore
到版本2.12.0
.以下是我对该软件包2.12.0版的测试结果:
此外,您还可以使用其他解决方法,请参阅此处了解更多详细信息。
s2j5cfk02#
作为sdk2.14的一部分,这是一个突破性的变化。
对于asp.net core,只需使用以下行修改configureservices():
对于asp.net修改applicationinsights.config文件: