Rozwiązywanie problemów związanych z błędem wdrożenia zasady Spike Arrest

Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
info

InvalidAllowedRate

Komunikat o błędzie

Wdrażanie proxy interfejsu API za pomocą interfejsu Edge UI lub interfejsu Edge Management API kończy się niepowodzeniem i wyświetla się ten komunikat o błędzie:

Error Saving Revision [revision_number]
Invalid spike arrest rate [invalid_rate].

Przykładowe komunikaty o błędach

Error Saving Revision 1
Invalid spike arrest rate 30s.

Error Saving Revision 1
Invalid spike arrest rate 30.1ps.

Przykładowe zrzuty ekranu

Przyczyna

Jeśli współczynnik zatrzymania nagłych wzrostów określony w elemencie <Rate> zasady Spike Arrest nie jest liczbą całkowitą lub jeśli nie ma on sufiksu ps ani pm, wdrożenie serwera proxy interfejsu API nie powiedzie się.

Prawidłowe wartości to [int]ps i [int]pm.

Jeśli na przykład w elemencie <Rate> zasady ochrony przed nagłymi wzrostami ruchu określają wartość 30.1ps, wdrożenie serwera proxy interfejsu API nie powiedzie się. Dzieje się tak, ponieważ 30,1 nie jest liczbą całkowitą.

Diagnostyka

  1. Określ nieprawidłową wartość szybkości zatrzymania nagłego wzrostu podaną w zasadach dotyczących zatrzymania nagłego wzrostu. Informacje te znajdziesz w komunikacie o błędzie. Na przykład w tym błędzie nieprawidłowe zatrzymanie skoku to 30.1:

    Error Saving Revision 1
    Invalid spike arrest rate 30.1ps.
    
  2. Sprawdź wszystkie zasady Spike Arrest w konkretnym serwerze proxy interfejsu API, w którym wystąpił błąd. Jeśli istnieje zasada ograniczania nagłych wzrostów, w której ograniczenie nagłych wzrostów określone w elemencie <Rate> odpowiada nieprawidłowemu współczynnikowi ograniczenia nagłych wzrostów zidentyfikowanemu w kroku 1 powyżej, to jest to przyczyna błędu.

    Na przykład te zasady określają wartość <Rate> jako 30, 1 ps, co odpowiada wartości w komunikacie o błędzie:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <SpikeArrest async="false" continueOnError="false" enabled="true" name="CheckRate">
        <DisplayName>CheckRate</DisplayName>
        <Properties/>
        <Identifier ref="request.header.some-header-name"/>
        <MessageWeight ref="request.header.weight"/>
        <Rate>30.1ps</Rate>
    </SpikeArrest>
    

    Ponieważ szybkość zatrzymania skoków określona w elemencie <Rate> nie jest liczbą całkowitą, wdrożenie serwera proxy interfejsu API nie powiedzie się i wyświetli się błąd:

    Invalid spike arrest rate 30.1ps.
    

Rozdzielczość

Sprawdź, czy wartość limitu liczby żądań określona w elemencie <Rate> zasady Spike Arrest jest liczbą całkowitą i ma sufiks ps lub pm. Przykład:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<SpikeArrest async="false" continueOnError="false" enabled="true" name="CheckRate">
    <DisplayName>CheckRate</DisplayName>
    <Properties/>
    <Identifier ref="request.header.some-header-name"/>
    <MessageWeight ref="request.header.weight"/>
    <Rate>30ps</Rate>
</SpikeArrest>