Risoluzione dei problemi di errore di deployment del criterio SpikeArrest

Stai visualizzando la documentazione di Apigee e Apigee hybrid.
Visualizza la documentazione di Apigee Edge.

InvalidAllowedRate

Messaggio di errore

Il deployment del proxy API tramite l'API o la UI Apigee non riesce e viene visualizzato questo messaggio di errore:

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

Esempi di messaggi di errore

Error Saving Revision 1
Invalid spike arrest rate 30s.

Error Saving Revision 1
Invalid spike arrest rate 30.1ps.

Screenshot di esempio

Messaggio di errore relativo alla velocità di picco non valida di 30 secondi.

Messaggio di errore relativo alla velocità di arresto del picco non valida 30.1ps.

Causa

Se la frequenza di Spike Arrest specificata nell'elemento <Rate> del criterio Spike Arrest non è un numero intero o se la frequenza non ha ps o pm come suffisso, il deployment del proxy API non va a buon fine.

I valori validi sono [int]ps e [int]pm.

Ad esempio, se la velocità di Spike Arrest specificata è 30.1ps nell'elemento <Rate> di una policy Spike Arrest, il deployment del proxy API non va a buon fine. Questo perché 30,1 non è un numero intero.

Diagnosi

  1. Identifica la frequenza di Spike Arrest non valida specificata nella policy Spike Arrest. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, l'arresto dei picchi non valido è 30.1:

    Error Saving Revision 1
    Invalid spike arrest rate 30.1ps.
    
  2. Esamina tutte le norme Spike Arrest nel proxy API specifico in cui si è verificato l'errore. Se esiste una policy Spike Arrest in cui l'arresto dei picchi specificato nell'elemento <Rate> corrisponde alla frequenza di Spike Arrest non valida identificata nel passaggio 1 precedente, questa è la causa dell'errore.

    Ad esempio, il seguente criterio specifica il valore di <Rate> come 30,1 ps, che corrisponde a quanto riportato nel messaggio di errore:

    <?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>
    

    Poiché la frequenza di picco specificata nell'elemento <Rate> non è un numero intero, il deployment del proxy API non va a buon fine e viene visualizzato l'errore:

    Invalid spike arrest rate 30.1ps.
    

Risoluzione

Assicurati che il valore del tasso di picco specificato nell'elemento <Rate> del criterio di picco sia un numero intero e abbia ps o pm come suffisso. Ad esempio:

<?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>