Tôi có một Apps Script trong đó Loop lặp lại tài khoản Google Analytics của mình cho đến khi tôi nhận được một cấu hình nhất định.
if (profileItems[i].getName() == "Dev Test")
Thần trong chức năng khác (xem dưới đây) Tôi thực hiện cuộc gọi đến các API của Google Analytics và luôn luôn nhận được sự ngoại lệ ném: Ngoại lệ: hạn ngạch Lỗi: Tỷ lệ tài khoản vượt quá giới hạn
Ngoại lệ: Lỗi hạn ngạch: Giới hạn tỷ lệ người dùng đã vượt quá
function getReportDataForProfile(profileId) {
var tableId = 'ga:' + profileId;
var startDate = getLastNdays(14); // 2 weeks (a fortnight) ago.
var endDate = getLastNdays(0); // Today.
var optArgs = {
'dimensions': 'ga:keyword', // Comma separated list of dimensions.
'sort': '-ga:visits,ga:keyword', // Sort by visits descending, then keyword.
'segment': 'dynamic::ga:isMobile==Yes', // Process only mobile traffic.
'filters': 'ga:source==google', // Display only google traffic.
'start-index': '1',
'max-results': '250' // Display the first 250 results.
};
//
//Exponential Backoff
//
for (var n=0; n<6; n++) {
try {
var results = Analytics.Data.Ga.get(
tableId, // Table id (format ga:xxxxxx).
startDate, // Start-date (format yyyy-MM-dd).
endDate, // End-date (format yyyy-MM-dd).
'ga:visits,ga:pageviews', // Comma seperated list of metrics.
optArgs);
} catch(e) {
if (n == 5) {
//var results = e;
//throw new Error('Quota ERROR');
throw (e)
}
Utilities.sleep((Math.pow(2,n)*1000) + (Math.round(Math.random() * 1000)));
}
}
return results;
}
- Tôi đã tăng số lượng Giới hạn cho mỗi người dùng trong Bảng điều khiển API lên 10.0
- Tỷ lệ phần trăm được sử dụng là 6%
- Và tôi đã áp dụng Exponential Backoff
- Tôi cũng tin rằng bằng cách chỉ hỏi cho Visits và trang truy cập Tôi không exagerating số của tôi về các cuộc gọi.
Bất kỳ ideias gì đang xảy ra?
giải pháp của bạn là tốt, nhưng nếu tôi có 20 cuộc gọi chờ đợi vào giới hạn 10 cuộc gọi, phần quan trọng của bạn kết thúc với tất cả chúng được phát hành cùng một lúc, chạm giới hạn tốc độ . –