Есть ли способ пакетного обновления профиля (ViewID) запросов? - PullRequest
0 голосов
/ 13 июня 2019

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

Вместо того, чтобы вручную обновлять каждое представление в аналитике, яудалось обновить изрядное количество из них через API управления для Google Analytics.

Проблема, с которой я сталкиваюсь, заключается в том, что лимит квоты на запись установлен равным 50 в день, и с такой скоростью буквально потребуется 27 дней только для обновления viewids, и кто знает, как долго делать остальныевещи, которые мне нужно сделать.

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

В настоящее время я работаю над пакетированием своих запросов с помощью BatchHttpRequest.из библиотеки API Google, но запрос происходит быстро, и это, по-видимому, не уменьшает количество запросов, которые происходят.

https://googleapis.github.io/google-api-python-client/docs/epy/googleapiclient.http.BatchHttpRequest-class.html

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

https://developers.google.com/analytics/devguides/config/mgmt/v3/user-management#batching

batch = BatchHttpRequest(callback=call_back)

    #for every item in list put together update query
    for i in range(1, max_row+1):

        link = service.management().profiles().update(
            accountId=accountid,
            webPropertyId=propertyid,
            profileId=viewid,
            body={
                'name': 'Master View',
                'eCommerceTracking': True,
                'enhancedECommerceTracking': True,
                'currency': 'USD',
                'timezone': 'America/New_York',
                'websiteUrl': updatesite
            }
        )

        #Add query to batch httpquery
        batch.add(link)

        #keep track of what's been added to the batch
        print('adding ' + updatesite +
                ' to batch request for ' + propertyname)

    #verify the batch object and execute
    print(batch)

    batch.execute(http=None)

Ожидается: обновлены профили Google Analytics за минимально возможное количество запросов

Результат:

Запрос 6 вернул ошибку API: 403: Ошибка квоты: Оценитьпревышен лимит записи.

затем

Запрос 12 вернул ошибку API: 403: ошибка квоты: превышен предел скорости пользователя.

затем

Запрос 1 возвращенОшибка API: 403 Ошибка квоты: Ошибка квоты: превышено максимальное количество записей в день для этого проекта.

1 Ответ

0 голосов
/ 26 июня 2019

Таким образом, после долгих сражений со сценарием пакетирование не позволяет вставлять в аналитику более 50 данных о вызовах в день.

Мне пришлось использовать Puppeteer для автоматизации массового переименования имен представлений в аналитике.

...