メディア アイテムへのアクセス時に起動した「ダウンロード」イベントによる集計エラー


概要

「マーケティング アセット」フィールドに空の値のあるメディアへアクセスする際に、「ダウンロード」イベントが発生すると、対応するインタラクションが原因で、集計プロセスで例外が発生し、エクスペリエンス アナリティクスまたはその他のレポーティング アプリケーションによって表示される結果から除外されます。

以下のエラーがログ ファイルでも発生します。

9100 12:12:33 ERROR Aggregation Error
Exception: System.Exception
Message: definition not found
Source: Sitecore.ExperienceAnalytics 
  at Sitecore.ExperienceAnalytics.Aggregation.Pipeline.SegmentProcessor.ProcessSegments(AggregationPipelineArgs args, IEnumerable`1 segments) 
  at Sitecore.ExperienceAnalytics.Aggregation.Pipeline.SegmentProcessor.OnProcess(AggregationPipelineArgs args) 
  at Sitecore.Analytics.Aggregation.Pipeline.AggregationProcessor.Process(AggregationPipelineArgs args) Nested Exception 
Exception: System.InvalidOperationException Message: definition not found Source: Sitecore.ExperienceAnalytics   at Sitecore.ExperienceAnalytics.Core.Repositories.FacetDataService.GetFacetFieldValues[TDefinition](ID itemId) at Sitecore.ExperienceAnalytics.Core.Repositories.FacetDataService.HasDimensionKey[TDefinition](PageEventData pageEvent)   at System.Linq.Enumerable.WhereListIterator`1.MoveNext() at Sitecore.ExperienceAnalytics.Aggregation.Dimensions.PageEventDimensionBase.GetDimensionKeys(IVisitAggregationContext context)   at Sitecore.ExperienceAnalytics.Aggregation.Dimensions.PageEventDimensionBase.<GetData>d__8.MoveNext()   at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()   at Sitecore.ExperienceAnalytics.Aggregation.Pipeline.SegmentProcessor.ProcessSegments(AggregationPipelineArgs args, IEnumerable`1 segments)

解決策

この問題を回避するため、xDBにSitecore XP 8.1を接続する前に、全てのメディア アイテムの「マーケティング アセット」フィールドを入力します。

「マーケティング アセット」フィールドに自動的に入力するには、次の回避策を使用します。