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 alla velocità di arresto dei picchi non valida 30,1 ps.

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 di Spike Arrest in cui lo Spike Arrest specificato nell'elemento <Rate> corrisponde alla frequenza di Spike Arrest non valida identificata nel passaggio 1 sopra, allora 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 della frequenza 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>