Risoluzione dei problemi di errore di deployment del criterio SpikeArrest

Questa pagina si applica ad Apigee e Apigee hybrid.

Visualizza la documentazione di Apigee Edge.

InvalidAllowedRate

Messaggio di errore

Il deployment del proxy API tramite la UI o l'API 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 arresto dei picchi non valida di 30 secondi.

Messaggio di errore relativo al tasso di soppressione dei picchi non valido 30.1ps.

Causa

Se il tasso di limitazione dei picchi specificato nell'elemento <Rate> del criterio di limitazione dei picchi non è un numero intero o se il tasso 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 SpikeArrest. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, il picco di arresto non valido è 30.1:

    Error Saving Revision 1
    Invalid spike arrest rate 30.1ps.
    
  2. Esamina tutti i criteri 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 arresto dei picchi non valida identificata nel passaggio 1 precedente, allora questa è la causa dell'errore.

    Ad esempio, il seguente criterio specifica il valore di <Rate> come 30,1 ps, che corrisponde a quello 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 della frequenza di limitazione dei picchi specificato nell'elemento <Rate> del criterio di limitazione dei picchi 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>