1

Google Analytics, Facebook 및 Twitter Analytics api에서 데이터를 가져 오는 분석 모듈을 연구 중입니다.Analytics보고 API 데이터가 Google Analytics 대시 보드와 일치하지 않는 이유는 무엇입니까?

Analytics Reporting Using Api V4를 사용하여 Google 애널리틱스에서 데이터를 가져옵니다. Total number of sessions 값이 대시 보드에 표시되는 값과 일치하지 않습니다. 세션 수를 가져 오려면 메트릭 ga:sessions을 사용하고 있습니다.

보고 API에서 오는 세션 수가 대시 보드와 일치하는 경우가 있습니다. 하지만 항상 그런 것은 아닙니다. 적절한 설명없이 QA에서 승인을 얻는 것이 어렵다는 것을 알고 있습니다.

차원 필터와보고 쿼리를 여러 번 확인했지만 오류가 발견되지 않았습니다.

보고서 요청에 samplingLevel을 추가했지만 여전히 동일한 결과가 표시됩니다. https://developers.google.com/analytics/devguides/reporting/core/v4/samples에 따르면

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

대신 setDimensionFilterClauses의 setSegments를 사용합니다. 이와 같이 :

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)); 

이 예에서는 패스 필터를 사용한다. "절"변수에 따라 변경해야합니다.

관련 문제