Sınırlar ve kotalar, Google altyapısını Raporlar API'sini uygunsuz bir şekilde kullanan otomatik bir süreçten korur. Bir API'den gelen aşırı istekler, zararsız bir yazım hatasından veya gereksiz API çağrıları yapan verimsiz tasarlanmış bir sistemden kaynaklanabilir. Nedeni ne olursa olsun, belirli bir kaynaktan gelen trafiğin belirli bir düzeye ulaştıktan sonra engellenmesi, Google Workspace sisteminin genel sağlığı için gereklidir. Bir geliştiricinin eylemlerinin daha büyük topluluğu olumsuz etkilememesini sağlar.
API isteğinizin başarısız olması durumunda bir HTTP durum kodu yanıtı alırsınız. 403 durum kodu, yanlış girişle ilgili hata bilgilerini, 503 HTTP durum kodu ise hangi API kotalarının aşıldığını gösteren hata bilgilerini içerir. Bu yanıtlar, özel uygulamanızın bu hataları algılamasına ve uygun işlemi yapmasına olanak tanır.
İsteklerinizin belirli bir süre içinde tamamlanması gerekiyorsa isteklerinizi paralel olarak gönderin veya Java ya da C# uygulamanızda birden fazla iş parçacığı kullanın. Paralel isteklere örnek olarak, tek bir kullanıcıdan çok sayıda e-posta eklemek veya kaldırmak yerine farklı kullanıcılardan küçük e-posta grupları istemek verilebilir. İleti dizileri söz konusu olduğunda, kullanıcı e-postası başına bir ileti dizisi olacak şekilde 10 ileti dizisiyle başlamayı deneyin. İş parçacığı önerisinin dezavantajları olduğunu ve tüm API durumlarında işe yaramadığını unutmayın. İstek sayısı çok yükselirse kota hataları oluşur.
Zamana dayalı tüm hatalar (iş parçası başına N saniye için en fazla N öğe), özellikle 503 durum kodu hataları için kodunuzun istisnayı yakalamasını ve üstel geri çekilme algoritması kullanarak başarısız olan çağrıyı yeniden denemeden önce kısa bir süre beklemesini öneririz. Bir iş parçacığı için Reports API örneğinde 5 saniye beklenir ve başarısız olan çağrı yeniden denenir. İstek başarılı olursa bu işlemi diğer ileti dizileri için de tekrarlayın. İkinci istek başarılı olmazsa uygulamanız, bir arama başarılı olana kadar isteğin sıklığını azaltmalıdır. Örneğin, ilk 5 saniyelik gecikmeyi 10 saniyeye çıkarın ve başarısız olan çağrınızı tekrar deneyin. Ayrıca, yeniden deneme sınırı belirleyin. Örneğin, uygulamanız kullanıcıya hata döndürmeden önce isteği farklı gecikme süreleriyle 5-7 kez yeniden deneyin.
Sınırlar
API Sınır Kategorileri | Sınırlar |
---|---|
QPS ve QPD oranlarını raporlama | API, Google Cloud projeniz için istek sayısını sınırlar.
Google Cloud Console'da ayarlanan varsayılan değer,Google Cloud projesi başına kullanıcı başına dakikada 2.400 sorgudur.
Bu sınırı, Google Cloud projenizin Admin SDK API Kotaları sayfasından artırabilirsiniz.
Bu sınırlar aşılırsa sunucu, HTTP 503 durum kodunu döndürür. İsteklerinizi yeniden denerken eksponansiyel geri yükleme algoritmasını kullanın. |
activities.list için ek sınırlar |
activities.list API'de dakika başına 250 filtre sorgusu (saatte 15.000 filtre sorgusu) sınırı vardır.
Filtre sorgusu, aşağıdaki sorgu parametrelerinden en az birini içeren bir API isteğidir:
|
API Kota Kategorileri | Kotalar |
maxResults | Bir API'nin yanıtının her sayfasında listelenen kayıt sayısı 0 ile 1.000 arasında değişir. Varsayılan değer 1.000 kayıttır. |
Diğer Sınır Türleri
Diğer Sınır Türleri | Sınırlamalar ve Yönergeler |
---|---|
Veri biçimi, varsayılan | Varsayılan veri biçimi JSON'dur. API, Atom biçimini de destekler. |
Yetkisiz istekler | Google, API'ye yetkisiz istek gönderilmesine izin vermez. Yetkilendirme jetonu sağlanmazsa istek yetkisiz olarak kabul edilir. Daha fazla bilgi için İstekleri yetkilendirme başlıklı makaleyi inceleyin. |
Uyarı mesajları |
|
activities.list için en iyi uygulamalar
activities.list yönteminin, denetleme incelemeleri için kullanılması beklenir.
En iyi performansı elde etmek için startTime
ve endTime
parametrelerini kullanarak isteğinizde bir zaman aralığı bulunmalıdır. Daha dar zaman aralıkları, yanıt sürelerinin önemli ölçüde kısalmasını sağlar.
Bu yöntem, denetim günlüklerinin yüksek hacimli olarak alınması için tasarlanmamıştır. activities.list filtre isteği kotanızı düzenli olarak tüketiyorsanız aşağıdaki seçenekleri değerlendirin:
- Google Workspace günlüklerinin BigQuery'ye aktarılmasını ayarlayın ve ihtiyacınız olan verileri API kota kısıtlamaları olmadan almak ve analiz etmek için BigQuery'nin güçlü sorgu API'lerini kullanın.
- Filtre istekleri kullanmak yerine, zaman aralığı içeren filtre dışı istekler kullanın ve istemci tarafı filtreleme (ör. filtreleme mantığını uygulamanızda yapın) gerçekleştirin. Bu sayede,dakika başına 250 filtre sorgusu sınırını aşabilirsiniz ancak kullanıcı başına ve Google Cloud projesi başına dakika başına 2.400 sorgu sınırına tabi olmaya devam edersiniz.