這是一個很難問的問題......所以我將盡我所能描述情況的輪廓:
我有一個 WCF 服務,它使用我遵循的 AI 控制臺實作://https://learn.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 是否有正確的連接字串,并且我已經添加了測驗代碼以通過向資料庫寫入簡單的測驗行來檢查呼叫是否成功......一切似乎都很好。
有什么想法我可以檢查以使其正常作業嗎?我有點卡住了,因為我想不出下一步行動來解決問題。
非常感謝,戴維
uj5u.com熱心網友回復:
在使用 WireShark 進行一些除錯后,我發現對應用程式洞察的呼叫是在 TSL1.0 中,而不是 TSL1.2 中,因此不被接受。
添加后
protected void Application_Start(object sender, EventArgs e)
{
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
}
到 global.asax.cs
電話在 TSL1.2 中,它們以天藍色 :)
(將以下內容添加到 web.config 也可以)
<system.web>
<httpRuntime targetFramework="4.7.2"/>
</system.web>
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/512562.html
