異なる.NET FrameworkバージョンでxDB Cloudを使用している場合、エクスペリエンス アナリティクス レポートでデータが欠落する


説明

xDB Cloud 1.0または2.0を使用すると、エクスペリエンス アナリティクスまたはエクスペリエンス プロファイルのアプリケーションのデータが欠落する場合があります。本事象は、レポートが表示されるオンプレミス サーバー(通常はCMサーバー)がある.NETバージョン(例えば、バージョン4.7.2)で実行されており、一方xDB Cloud Reportingサービスがまた別のバージョン(例えば、バージョン4.5)で実行されている場合に発生する可能性があります。オンプレミス サーバーにおけるログのエラーの例は、以下の通りです。

ERROR Member '_compareInfo' was not found.
Exception: System.Runtime.Serialization.SerializationException
Message: Member '_compareInfo' was not found.
Source: mscorlib
at Sitecore.Analytics.Reporting.Datasources.Remote.RemoteReportDataSourceProxy.GetData(ReportDataQuery query)
at Sitecore.Analytics.Reporting.ReportDataProvider.ExecuteQueryWithCache(ReportDataQuery query, ReportDataSource dataSource, CachingPolicy cachingPolicy)
...
ERROR Error in line 18 position 13. 'EndElement' 'Comparer' from namespace '' is not expected. Expecting element '_compareInfo'.
Exception: System.Runtime.Serialization.SerializationException
Message: Error in line 18 position 13. 'EndElement' 'Comparer' from namespace '' is not expected. Expecting element '_compareInfo'.
Source: System.Runtime.Serialization
at Sitecore.Analytics.Reporting.Datasources.Remote.RemoteReportDataSourceProxy.GetData(ReportDataQuery query)
at Sitecore.Analytics.Reporting.ReportDataProvider.ExecuteQueryWithCache(ReportDataQuery query, ReportDataSource dataSource, CachingPolicy cachingPolicy)
...

本事象はデータの表示にのみ影響し、オンプレミス サーバーとxDB Cloud ReportingサーバーのXMLのシリアル化アルゴリズムが異なることによって発生します。データの損失の心配はありません。技術的な詳細は、以下のリンクを参照してください。
https://github.com/dotnet/corefx/issues/30415

解決策

留意点: 上記のスタックトレースでエラーが発生した場合にのみ、次の解決策を適用することをお勧めします。

レポートが表示されるサーバー(通常はCMサーバー)に最新の.NET Frameworkをインストールします。
https://www.microsoft.com/net/download/dotnet-framework-runtime

事象が解決しない場合は、Sitecoreサポートに連絡してください。