Ограничение API Google Analytics для проблемы извлечения диапазона данных

Я пытаюсь извлечь некоторые данные измерений и показателей из API Google Analytics, используя клиентскую библиотеку Java.

Для определенного viewID я вижу, что не могу извлечь данные более чем за 14 месяцев и 2 дня, начиная с сегодняшнего дня. Я столкнулся с этой проблемой только с клиентской библиотекой Java и API и для некоторых конкретных представлений. В интерфейсе Google я вижу все отчеты без ограничений за 14 месяцев.

Этот код Java:

DateRange dateRange = new DateRange().setStartDate(startDate).setEndDate(endDate);

    DimensionFilter dimensionFilter = new DimensionFilter();
    dimensionFilter.setDimensionName("ga:medium");
    dimensionFilter.setOperator("EXACT");
    dimensionFilter.setExpressions(Collections.singletonList("organic"));
    DimensionFilterClause dimensionFilterClause = new DimensionFilterClause();
    dimensionFilterClause.setFilters(Collections.singletonList(dimensionFilter));

    MetricFilter metricFilter = new MetricFilter();
    metricFilter.setMetricName("ga:sessions");
    metricFilter.setNot(true);
    metricFilter.setComparisonValue("0");
    MetricFilterClause metricFilterClause = new MetricFilterClause();
    metricFilterClause.setFilters(Collections.singletonList(metricFilter));

    ReportRequest reportRequest = new ReportRequest()
            .setViewId(viewID)
            .setDateRanges(Collections.singletonList(dateRange))
            .setSamplingLevel(samplinglevel.name())
            .setPageSize(100000)
            .setDimensionFilterClauses(Collections.singletonList(dimensionFilterClause))
            .setMetricFilterClauses(Collections.singletonList(metricFilterClause))
            .setDimensions(dimensionList)
            .setMetrics(metricList)
            .setIncludeEmptyRows(false);

Я могу нормально извлекать все остальные виды без ограничений, но для конкретного клиента обнаружил эту проблему.

Есть ли у вас какое-либо представление об этой проблеме с ограничениями?

Я не могу найти никакой информации об этом пределе в Java.


person Dr. Mza    schedule 14.03.2019    source источник
comment
Какое сообщение об ошибке вы получаете?   -  person DaImTo    schedule 15.03.2019
comment
@DaImTo ошибки нет .. Я нашел 0 строк   -  person Dr. Mza    schedule 15.03.2019
comment
Если вы не получите сообщение об ошибке, значит, для этого запроса нет данных. Возможно, это представление не было создано в то время или данные, которые вы запрашиваете, не существуют.   -  person DaImTo    schedule 15.03.2019
comment
@DaImTo, но я получаю данные, когда меняю диапазон данных на что-то за последние 14 месяцев.   -  person Dr. Mza    schedule 15.03.2019
comment
то рассматриваемое представление было активным только в течение последних 14 месяцев.   -  person DaImTo    schedule 15.03.2019
comment
@DaImTo каждый день я теряю его в диапазоне данных, диапазон ограничен 14 месяцами и ровно 2 днями   -  person Dr. Mza    schedule 15.03.2019
comment
Тогда именно тогда этот вид начал записывать данные. Вы не можете видеть данные до того, как начали отправлять данные в Google Analytics.   -  person DaImTo    schedule 15.03.2019
comment
запустите запрос только с параметром ga:date и метрикой ga:sessions. Не добавляйте свои фильтры. Запустите его для 2010-01-01 - 2019-01-01, это должно помочь вам узнать, где данные начали записываться, или это проблема со всеми теми фильтрами, которые вы добавили.   -  person DaImTo    schedule 15.03.2019


Ответы (1)


Проблема с квотами

существует ряд квот для API Google Analytics. Ограничения и квоты

Общие лимиты квот

  • 50 000 запросов на проект в день, которые можно увеличить.
  • 10 запросов в секунду (QPS) на IP-адрес. В консоли API существует аналогичная квота, называемая запросами на 100 секунд на пользователя. По умолчанию установлено значение 100 запросов за 100 секунд на пользователя, и его можно настроить на максимальное значение 1000. Но количество запросов к API ограничено максимум 10 запросами в секунду на пользователя.
  • Если ваше приложение делает все запросы API с одного IP-адреса (т. е. от имени ваших пользователей), используйте параметр userIP или quotaUser с каждым запросом, чтобы получить полную квоту QPS для каждого пользователя. Дополнительные сведения см. в сводке стандартных параметров запроса.

API отчетов

Следующие квоты применяются ко всем API отчетов, включая Core Reporting API v3, Analytics Reporting API v4, Real Time API v3 и Multi-channel Funnel API v3:

  • 10 000 запросов на просмотр (профиль) в день (нельзя увеличить)
  • 10 одновременных запросов на просмотр (профиль) (нельзя увеличить)

Мне трудно понять, какую квоту вы используете, поскольку вы не опубликовали сообщение. Однако, если вы говорите, что это одно представление, я бы посоветовал мне, что это 10000 запросов квоты данных и что это представление должно иметь больше данных, чем другие ваши представления. Вы ничего не можете сделать, чтобы продлить эту квоту. Вы можете только настроить свои запросы так, чтобы вы делали меньше запросов.

Примечание. Google не использует тот же идентификатор клиента, что и вы, поэтому они не связаны ограничениями, которые есть у вашего клиента. Если ваш клиент исчерпал свою квоту, он не будет работать. Это не повлияет на веб-сайт Google Analytics.

НЕТ ДАННЫХ

Если запрос возвращает нулевые строки, это не проблема квоты, просто нет данных для запрашиваемых дат и метаданных.

Я подозреваю, что проблема со всеми теми фильтрами, которые вы используете.

Запустите запрос только с параметром ga:date и метрикой ga:sessions. Не добавляйте свои фильтры. Запустите его для 2010-01-01 - 2019-01-01, это должно помочь вам узнать, где данные начали записываться, или это проблема со всеми теми фильтрами, которые вы добавили.

person DaImTo    schedule 15.03.2019