我正在开发一个分析模块,从Google Analytics,Facebook和Twitter analytics api中提取数据。
使用分析报告Api V4从谷歌分析中提取数据。Total number of sessions值与我在仪表板上看到的值不匹配。我使用指标ga:sessions来拉取会话的数量。
在某些情况下,来自reporting 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");发布于 2016-09-25 03:10:05
根据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));此示例使用路径筛选器。你应该根据你的“子句”变量来改变它。
https://stackoverflow.com/questions/38617299
复制相似问题