我在Azure web應用程序中的聯合連接數量有問題。如果我能看到連接池的數量,這將對我有所幫助,這樣我就可以理解它與應用程序使用情況的關係。如何查看Azure應用服務中共用的ADO.NET數據庫連接數量?
在經典的Windows機器上,我可以使用「性能監視器」工具查看ADO.NET性能計數器「NumberOfPooledConnections」。但是當我使用Azure App Service時,我無法弄清楚如何做同樣的事情。
我在Azure web應用程序中的聯合連接數量有問題。如果我能看到連接池的數量,這將對我有所幫助,這樣我就可以理解它與應用程序使用情況的關係。如何查看Azure應用服務中共用的ADO.NET數據庫連接數量?
在經典的Windows機器上,我可以使用「性能監視器」工具查看ADO.NET性能計數器「NumberOfPooledConnections」。但是當我使用Azure App Service時,我無法弄清楚如何做同樣的事情。
不幸的是,Azure應用服務不支持性能計數器,因爲它具有多租戶特性。
參見:Access performance counter programmatically in Microsoft Azure web app
三樣東西,你可能想不過是嘗試:
啓用應用程序洞察(https://docs.microsoft.com/en-us/azure/application-insights/app-insights-performance-counters)或New Relic的。
如果你的應用是用於測試目的,我也可以建議將其部署到cloudservice在那裏你將有機會獲得完整的虛擬機和傳統的性能計數器
聯合連接在數據庫端是可見的,所以如果數據庫是SQL服務器,例如,可以使用簡單的命令如sp_who(您可以使用連接字符串中的「Application Name」鍵來簡化篩選) –
@Simon Mourier對我而言,這是不可能的,因爲Web應用程序是連接到多個數據庫的多租戶應用程序。所以我需要查看所有數據庫的連接總數。你的解決方案只會給我1個數據庫的連接數。 – Bassem
好吧,您仍然可以使用數據庫命令(如sp_who)來確定與所有數據庫的連接數。 –