3

我们正在使用 Microsoft Application Insights 来记录遥测数据。突然间,它已停止为大多数用户记录数据。我们从 WPF 应用程序进行日志记录。我们怀疑打开 ServicePointManager.ServerCertificateValidationCallback 导致了这个问题。这是回调的代码 -

     public static bool CertificateValidationCallBack(
     object sender,
     X509Certificate certificate,
     X509Chain chain,
     System.Net.Security.SslPolicyErrors sslPolicyErrors)
     {
        bool isCertificateValid = true;

        try
        {
            var certificate2 = new X509Certificate2(certificate);
            isCertificateValid = certificate2.Verify();
        }
        catch
        {
        }

        return isCertificateValid;
     }

根据配置值,我们附加回调,否则我们将其设置为 null。这是我们如何获得ServicePointManager.ServerCertificateValidationCallback值 -

if (!AllowFiddler)
{
     ServicePointManager.ServerCertificateValidationCallback = CertificateValidationCallBack;
}
else
{
     ServicePointManager.ServerCertificateValidationCallback = null;
}

每次我们使用 HttpClient 发出异步请求时,都会执行上述代码块。

代码有什么问题吗?Application Insights SDK 是否保留任何可用于调查数据丢失的日志?我查看了 %localappdata%/Microsoft/ApplicationInsights 文件夹 - 它只包含空文件夹。关于如何解决此问题的任何想法?

4

0 回答 0