Sıfırlama Politikası

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Ne?

Hedef kota politikası tarafından izin verilen kalan istek sayısını dinamik olarak değiştirmek için kullanılır. Bu politikayı genellikle kota sayacının sıfırlanmasını beklemek yerine hedef kota politikasının mevcut kota sayacını azaltmak için kullanırsınız.

Örneğin, hedef kota politikası, bir geliştiricinin haftada 1.000 istek göndermesine izin verir. Geliştirici, haftanın ikinci gününde bu sınıra ulaşmış. Haftanın geri kalanında 500 ek istekte bulunulmasına izin vermek için kota sayaçlarından 500 çıkarılmasını sağlamak üzere Kota Sıfırlama politikasını kullanın. Haftanın sonunda kota politikası sıfırlanır ve geliştirici haftada 1.000 isteğe geri döner.

Kota politikası hakkında daha fazla bilgi için Kota politikası'nı inceleyin. Ayrıca, kota sıfırlama politikasını kullanmayla ilgili bu topluluk gönderisine de göz atın.

Örnekler

Bu politika kodu örnekleri, kota sayaçlarının nasıl sıfırlanacağını gösterir:

Varsayılan Sayacı Sıfırla

<ResetQuota name="resetQuota">
   <Quota name="MyQuotaPolicy">
      <Identifier name="_default">
         <Allow>100</Allow>
      </Identifier>
   </Quota>
</ResetQuota>

Kota politikasını sıfırla, <Quota> etiketinin name özelliğini kullanarak hedef kota politikasını belirtir. Yukarıdaki örnekte, MyQuotaPolicy politikası hedeftir.

Tüm kota sıfırlama politikaları, güncellenecek kota politikasındaki sayacı belirtmek için <Identifier> etiketini gerektirir. Kota politikası <Identifier> etiketini de içermediği sürece varsayılan olarak tek bir sayaca sahiptir. Bu örnekte, hedef kota politikasında <Identifier> etiketi kullanılmadığı için name özelliğini _default olarak belirtirsiniz.

<Allow> öğesi, hedef politikadaki mevcut kota sayısını azaltmak için kullanılan değeri belirtir. Bu örnekte, hedef kota politikasına 100 istek daha gönderilmesine izin vermek için kota sayısı 100 azaltılır. Hedef kota politikası sıfırlandığında bu değişiklik silinir.

Hedef kota politikasının tanımı aşağıda gösterilmiştir:

<Quota name="MyQuotaPolicy">
  <Interval>5</Interval>
  <TimeUnit>hour</TimeUnit>
  <Allow count="100"/>
</Quota>

Referans Kullanma

<ResetQuota name="resetQuota">
   <Quota ref="request.header.quotapolicy">
      <Identifier name="_default">
         <Allow ref="request.header.allowquota" />
      </Identifier>
   </Quota>
</ResetQuota>

Bu örnekte, hedef kota politikasının adını ve kota sayısındaki değişikliği istekte başlık olarak iletiyorsunuz. Daha sonra, bu değerleri içeren akış değişkenlerine kota sıfırlama politikasında başvurabilirsiniz.

Tanımlayıcıyı belirtme

<ResetQuota name="resetQuota">
   <Quota name="QuotaPolicy">
      <Identifier ref="request.header.clientId">
         <Allow>100</Allow>
      </Identifier>
   </Quota>
</ResetQuota>

Hedef Kota politikası <Identifier> etiketini belirtiyorsa belirli bir kota sayısını güncellemek için Kota Sıfırlama politikasının <Identifier> etiketine aynı değeri belirtebilirsiniz. Aşağıdaki hedef kota politikasındaki <Identifier> etiketinin, kota sıfırlama politikası için belirtilen değerle nasıl eşleştiğine dikkat edin:

<Quota name="QuotaPolicy">
  <Identifier ref="request.header.clientId"/>
  <Interval>5</Interval>
  <TimeUnit>hour</TimeUnit>
  <Allow count="100"/>
</Quota>

Öğe referansı

Öğe referansı, kota sıfırlama politikasının öğelerini ve özelliklerini açıklar.

<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1">
   <DisplayName>Reset Quota 1</DisplayName>
   <Quota name="quotaName" ref="request.header.quotapolicy">
      <Identifier name="identifierName" ref="request.header.identifier">
         <Class ref="request.header.classIdentifier" />
         <Allow>100</Allow>
      </Identifier>
   </Quota>
</ResetQuota>

<ResetQuota> özellikleri

<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1">

Aşağıdaki tabloda tüm politika üst öğelerinde ortak olan özellikler açıklanmaktadır:

Özellik Açıklama Varsayılan Varlık
name

Politikanın dahili adı. name özelliğinin değeri Harf, sayı, boşluk, kısa çizgi, alt çizgi ve nokta içermelidir. Bu değer, 255 karakteri aşmalıdır.

İsteğe bağlı olarak, politikayı<DisplayName> yönetim arayüzü proxy düzenleyicisinde farklı bir doğal dil adı kullanabilir.

Yok Zorunlu
continueOnError

Bir politika başarısız olduğunda hata döndürmesi için false olarak ayarlayın. Bu beklenen bir durumdur çoğu politika için geçerli olur.

Akış yürütmenin bir politikadan sonra bile devam etmesi için true olarak ayarlayın başarısız olur.

false İsteğe bağlı
enabled

Politikayı uygulamak için true olarak ayarlayın.

Politikayı devre dışı bırakmak için false değerine ayarlayın. Bu politika, bir akışa bağlı kalsa bile uygulanır.

true İsteğe bağlı
async

Bu özelliğin desteği sonlandırıldı.

false Kullanımdan kaldırıldı

&lt;DisplayName&gt; öğe

Politikayı name özelliğine ek olarak farklı bir doğal dil adına sahip yönetim arayüzü proxy düzenleyicisi.

<DisplayName>Policy Display Name</DisplayName>
Varsayılan

Yok

Bu öğeyi çıkarırsanız politikanın name özelliğinin değeri: kullanılır.

Varlık İsteğe bağlı
Tür Dize

<Quota> öğesi

Sayacı güncellenmesi gereken hedef kota politikasını tanımlar.

<Quota name="quotaName"  ref="request.header.quotapolicy">
   <Identifier name="identifierName" ref="request.header.identifier">
      <Allow>100</Allow>
   </Identifier>
</Quota>
Varsayılan: Yok
Mevcut olma: Zorunlu
Tür: Yok

Özellikler

Özellik Açıklama Varsayılan Varlık
ad

Hedef kota politikasının adını belirtir.

Yok İsteğe bağlı
ref Hedef kota politikasının adını içeren bir akış değişkeni. Hem ref hem de name belirtilirse ref öncelikli olur. ref, çalışma zamanında çözümlenmezse name kullanılır. Yok İsteğe bağlı

<Quota>/<Identifier> öğesi

Hedef kota politikası <Identifier> etiketini belirtiyorsa sayacı benzersiz şekilde tanımlamak için kullanılan değişken.

<Quota name="quotaName">
   <Identifier name="identifierName" ref="request.header.identifier">
      <Allow>100</Allow>
   </Identifier>
</Quota>
Varsayılan: Yok
Mevcut olma: Zorunlu
Tür: Dize

Özellikler

Özellik Açıklama Varsayılan Varlık
ad

Hedef kota politikasındaki sayı tanımlayıcısının adını belirtir. <Identifier> etiketini kullanmayan bir kota politikası için _default değerini belirtin.

Yok İsteğe bağlı
ref

Hedef kota politikasındaki sayı tanımlayıcısının adını içeren bir akış değişkeni. Hem ref hem de name belirtilirse ref öncelikli olur. ref çalışma zamanında çözümlenmezse name kullanılır.

Yok İsteğe bağlı

<Quota>/<Identifier>/<Allow> öğesi

Kota sayacının azaltılacağı miktarı belirtir. <Allow> değerini belirtmeniz gerekir. Aksi takdirde, politika kotayı değiştirmez.

<Identifier name="identifierName" ref="request.header.identifier">
   <Allow ref="request.header.allowquota">100</Allow>
</Identifier>
Varsayılan: Yok
Mevcut olma: Zorunlu
Tür: Tamsayı

Özellikler

Özellik Açıklama Varsayılan Varlık
ref

Hedef kota politikasındaki kota sayısında yapılan değişikliği içeren bir akış değişkeni.

Yok İsteğe bağlı

<Quota>/<Identifier>/<Class> öğesi

Kota sayacının güncellendiği sınıfı belirtir. Sınıfı kota politikasıyla kullanma hakkında daha fazla bilgi için Kota politikası başlıklı makaleyi inceleyin.

<Identifier name="_default">
   <Class ref="request.header.classIdentifier">
     <Allow>200</Allow>
   </Class>
</Identifier>
Varsayılan: Yok
Mevcut olma: İsteğe bağlı
Tür: Yok

Özellikler

Özellik Açıklama Varsayılan Varlık
ref

Güncellenecek kota sınıfını içeren akış değişkenine referans.

Yok İsteğe bağlı

Hata referansı

Bu bölümde, bu politika bir hatayı tetiklediğinde Edge tarafından ayarlanan hata kodları ile hata mesajları ve döndürülen hata mesajları ile Edge tarafından ayarlanan hata değişkenleri açıklanmaktadır. Bu bilgiyi, hataları ele almak için hata kuralları geliştirip geliştirmediğinizi bilmeniz önemlidir. Daha fazla bilgi için Politika hataları hakkında bilmeniz gerekenler ve Hataları işleme bölümlerine bakın.

Çalışma zamanı hataları

Politika yürütüldüğünde bu hatalar ortaya çıkabilir.

Hata kodu HTTP durumu Neden Düzelt
policies.resetquota.InvalidRLPolicy 500 Kotayı Sıfırla politikasının <Quota> öğesinde belirtilen Kota politikası, API proxy'sinde tanımlanmadığından akış sırasında kullanılamaz. <Quota> öğesi zorunludur ve sayacının Kota Sıfırlama politikası aracılığıyla güncellenmesi gereken hedef Kota politikasını tanımlar.
policies.resetquota.FailedToResolveAllowCountRef Yok Politikanın <Allow> öğesinde izin verilen sayıyı içeren değişken referansı bir değere çözümlenemez. Bu öğe zorunludur ve kota sayacının azaltılacağı miktarı belirtir.
policies.resetquota.FailedToResolveRLPolicy 500 <Quota> öğesinde ref özelliği tarafından başvurulan değişken çözümlenemiyor.

Dağıtım hataları

Bu hatalar, bu politikayı içeren bir proxy dağıttığınızda ortaya çıkabilir.

Hata adı Neden Düzelt
InvalidCount Kotayı Sıfırlama Politikası'nın <Allow> öğesinde belirtilen sayı değeri tam sayı değilse API proxy'sinin dağıtımı başarısız olur.

Şemalar

İlgili konular

Kota politikası