1

Googleアナリティクス、Facebook、Twitter AnalyticsのAPIからデータを取得する解析モジュールに取り組んでいます。AnalyticsレポートApiデータがGoogleアナリティクスダッシュボードと一致しないのはなぜですか?

Analytics Reporting Using Api V4を使用してGoogleアナリティクスからデータを取得します。 Total number of sessions値がDashboardに表示されている値と一致しません。私はメトリックga:sessionsを使用してセッション数を取得しています。

レポートAPIからのセッション数がDashboardと一致する場合があります。しかし、すべての時間ではありません。適切な説明がなくてもQAから承認されることが難しいと感じています。

ディメンションフィルタとレポートクエリを何度も確認しましたが、何も問題が見つかりませんでした。

報告要求にsamplingLevelを追加しましたが、同じ結果が表示されます。

ReportRequest totalNumberOfSessions = new ReportRequest().setViewId(VIEW_ID) 
       .setDateRanges(Arrays.asList(lifetime)) 
       .setDimensions(Arrays.asList(custom)) 
       .setDimensionFilterClauses(Arrays.asList(clause)) 
       .setMetrics(Arrays.asList(sessions)) 
       .setSamplingLevel("LARGE"); 
+0

最も一般的な理由はデータがサンプリングされているため、クエリにサンプリングデータが含まれているかどうかを確認できますか? –

+0

@PhilipWaltonサンプルデータはどういう意味ですか?あなたが望むなら、私はコードで質問を更新することができます。 –

+0

https://developers.google.com/analytics/devguides/reporting/core/v4/basics#sampling –

答えて

0

https://developers.google.com/analytics/devguides/reporting/core/v4/samplesによれば、setSegments代わりにsetDimensionFilterClausesを使用します。このよう :

String path = "<your_path>"; 
    SegmentDimensionFilter exactPathDimensionFilter = new SegmentDimensionFilter() 
      .setDimensionName("ga:pagePath").setOperator("EXACT") 
      .setExpressions(Arrays.asList(path)); 
    SegmentFilterClause exactPathSegmentFilterClause = new SegmentFilterClause() 
      .setDimensionFilter(exactPathDimensionFilter); 
    OrFiltersForSegment orFiltersForSegment = new OrFiltersForSegment() 
      .setSegmentFilterClauses(Arrays.asList(exactPathSegmentFilterClause)); 
    SimpleSegment simpleSegment = new SimpleSegment() 
      .setOrFiltersForSegment(Arrays.asList(orFiltersForSegment)); 
    SegmentFilter segmentFilter = new SegmentFilter() 
      .setSimpleSegment(simpleSegment); 
    SegmentDefinition segmentDefinition = new SegmentDefinition() 
      .setSegmentFilters(Arrays.asList(segmentFilter)); 
    DynamicSegment dynamicSegment = new DynamicSegment().setSessionSegment(
      segmentDefinition).setName("Path pageviews"); 
    Segment segment = new Segment().setDynamicSegment(dynamicSegment); 

    ReportRequest request = new ReportRequest().setViewId(VIEW_ID) 
      .setDateRanges(Arrays.asList(dateRange)) 
      .setMetrics(Arrays.asList(metric)) 
      .setDimensions(Arrays.asList(new Dimension().setName("ga:segment"))) 
      .setSegments(Arrays.asList(segment)); 

この例では、パス・フィルタを使用します。あなたはあなたの "句"変数に従ってそれを変更する必要があります。

関連する問題