Résolution des erreurs de déploiement de la règle Spike Arrest

Vous consultez la documentation d'Apigee X.
Consultez la documentation d'Apigee Edge.

InvalidAllowedRate

Message d'erreur

Le déploiement du proxy d'API par le biais de l'interface utilisateur ou l'API Apigee échoue avec le message d'erreur suivant :

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

Exemples de messages d'erreur

Error Saving Revision 1
Invalid spike arrest rate 30s.

Error Saving Revision 1
Invalid spike arrest rate 30.1ps.

Exemples de captures d'écran

Message d'erreur taux d'arrêt de pic de 30 s incorrect.

Message d'erreur taux d'arrêt de pic de 30,1 ps incorrect.

Cause

Si le taux d'arrêt de pic spécifié dans l'élément <Rate> de la règle Spike Arrest n'est pas un entier ou si le taux ne comporte pas ps ou pm comme suffixe, alors le déploiement du proxy d'API échoue.

Les valeurs valides sont [int]ps et [int]pm.

Par exemple, si le taux d'arrêt de pic spécifié est 30.1ps dans l'élément <Rate> d'une règle Spike Arrest, le déploiement du proxy d'API échoue. Cela est dû au fait que 30,1 n'est pas un entier.

Diagnostic

  1. Identifiez le taux d'arrêt de pic non valide spécifié dans la règle Spike Arrest. Vous trouverez cette information dans le message d'erreur. Par exemple, dans l'erreur suivante, l'arrêt de pic non valide est 30.1 :

    Error Saving Revision 1
    Invalid spike arrest rate 30.1ps.
    
  2. Examinez toutes les règles Spike Arrest dans le proxy d'API spécifique où l'échec a eu lieu. S'il existe une règle Spike Arrest dans laquelle l'arrêt de pic spécifié dans l'élément <Rate> correspond au taux d'arrêt de pic non valide identifié à l'étape 1 ci-dessus, il s'agit de la cause de l'erreur.

    Par exemple, la règle suivante spécifie la valeur de <Rate> sur 30,1 ps, qui correspond au contenu du message d'erreur :

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

    Comme le taux d'arrêt de pic spécifié dans l'élément <Rate> n'est pas un entier, le déploiement du proxy d'API échoue avec l'erreur :

    Invalid spike arrest rate 30.1ps.
    

Solution

Vérifiez que la valeur du taux d'arrêt de pic spécifié dans l'élément <Rate> de la règle Spike Arrest est un entier et qu'il comporte le suffixe ps ou pm. Exemple :

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