![](/img/trans.png)
[英]BadHttpRequestException caused by slow clients are showing up in my application insights
[英]Application Insights - No data showing up from server
這是一個很難問的問題......所以我將盡我所能描述情況的輪廓:
我有一個 WCF 服務,它使用我遵循的 AI 控制台實現://https://docs.microsoft.com/en-us/azure/azure-monitor/app/console/
示例代碼:
string applicationInsightsConnectionString = ConfigurationManager.AppSettings["ApplicationInsightsConnectionString"];
TelemetryConfiguration configuration = TelemetryConfiguration.CreateDefault();
configuration.ConnectionString = applicationInsightsConnectionString;
var telemetryClient = new TelemetryClient(configuration);
global.asax 調用telemetryClient.TrackTrace("application start");
在應用程序啟動時,這是我希望在 AI 中看到的最簡單的示例。
當通過 Visual Studio 在本地運行此代碼並給它 30 秒刷新時,我在 AI 中得到一個結果:
[![在此處輸入圖像描述][1]][1]
可悲的是,當我將此代碼部署到服務器以在 IIS 中運行時,我沒有任何記錄顯示在 AI 中。
更讓我困惑的是,這是我以完全相同的方式完成的第三次實現(所有 WCF 服務都在 IIS 中運行),但這是唯一沒有在 azure 門戶中記錄任何結果的實現,盡管它在本地工作.
我已經三次檢查了 web.config 是否具有正確的連接字符串,並且我添加了測試代碼以通過將簡單的測試行寫入數據庫來檢查調用是否成功......一切似乎都很好。
有什么想法我可以檢查以使其正常工作嗎? 我有點卡住了,因為我想不出下一步行動來解決問題。
非常感謝,戴維
在使用 WireShark 進行一些調試后,我發現對應用程序洞察的調用是在 TSL1.0 中,而不是 TSL1.2 中,因此不被接受。
添加后
protected void Application_Start(object sender, EventArgs e)
{
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
}
到 global.asax.cs
電話在 TSL1.2 中,它們到達 azure :)
(將以下內容添加到 web.config 也可以)
<system.web>
<httpRuntime targetFramework="4.7.2"/>
</system.web>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.