Stai visualizzando la documentazione di Apigee Edge.
Vai alla
documentazione di Apigee X. informazioni
InvalidQuotaInterval
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision [revision_number] Invalid quota interval [interval] in quota policy [policy_name].
Esempio di messaggio di errore
Error Saving Revision 1
Invalid quota interval 0.1 in quota policy Quota-1.
Screenshot di esempio
Causa
Se l'intervallo di quota specificato nell'elemento <Interval>
del criterio per le quote non è un numero intero, il deployment del proxy API non riesce.
Ad esempio, se l'intervallo di quota specificato è 0,1 nell'elemento <Interval>
di un criterio per le quote, il deployment del proxy API non riesce.
Diagnostica
Identifica il criterio per le quote in cui si è verificato l'errore e l'intervallo di quota non valido. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, il nome del criterio è
Quota-1
e l'intervallo di quota non valido è0.1
:Error Saving Revision 1 Invalid quota interval 0.1 in quota policy Quota-1.
Verifica che il valore dell'intervallo di quota specificato nel criterio per le quote non riuscito corrisponda al valore identificato nel messaggio di errore (passaggio 1 sopra). Ad esempio, il seguente criterio specifica il valore dell'intervallo di quota come
0.1
, che corrisponde al contenuto del messaggio di errore:<Quota async="false" continueOnError="false" enabled="true" name="Quota-1"> <DisplayName>Quota-1</DisplayName> <Properties /> <Allow count="3" /> <Interval>0.1</Interval> <TimeUnit>minute</TimeUnit> </Quota>
Se l'intervallo di quota specificato non è un numero intero, è questo il motivo dell'errore.
Nell'esempio di politica per le quote mostrato sopra, il valore dell'intervallo di quota è 0,1, che non è un numero intero. Pertanto, il deployment del proxy API non riesce e restituisce l'errore:
Invalid quota interval 0.1 in quota policy Quota-1.
Risoluzione
Assicurati che il valore dell'intervallo di quota specificato nell'elemento <Interval>
dei criteri per le quote sia un numero intero. Ad esempio:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota-1"> <DisplayName>Quota-1</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> </Quota>
InvalidQuotaTimeUnit
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision [revision_number] Invalid quota interval time unit [time_unit] in quota policy [policy_name] in Revision [revision_number] of application [proxy_name], in organization [org_name].
Esempio di messaggio di errore
Error Saving Revision 1
Invalid quota interval time unit year in quota policy Quota-1 in Revision 1 of application Quota_test, in organization aprabhashankar-eval.
Screenshot di esempio
Causa
Se l'unità di tempo specificata nell'elemento <TimeUnit>
del criterio per le quote non è supportata, il deployment del proxy API non va a buon fine.
Le unità di tempo supportate sono minute
, hour
, day
, week
e month
.
Ad esempio, se l'unità di tempo è specificata come year
nell'elemento <TimeUnit>
del criterio per le quote, il deployment del proxy API non riesce.
Diagnostica
Identifica le norme per le quote in cui si è verificato l'errore e l'unità di tempo non valida. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, il nome del criterio è
Quota-1
e l'unità di tempo non valida èyear
:Invalid quota interval time unit year in quota policy Quota-1 in Revision 1 of application Quota_test, in organization aprabhashankar-eval.
Verifica che l'unità di tempo specificata nell'elemento
<TimeUnit>
del criterio per le quote corrisponda all'unità di tempo identificata nel messaggio di errore (passaggio 1 sopra). Ad esempio, il seguente criterio specifica il valore dell'intervallo di quota comeyear
, che corrisponde al contenuto del messaggio di errore:<Quota async="false" continueOnError="false" enabled="true" name="Quota-1"> <DisplayName>Quota-1</DisplayName> <Properties /> <Allow count="3" /> <Interval>1</Interval> <TimeUnit>year</TimeUnit> </Quota>
Se l'unità di tempo specificata nei criteri per le quote non è supportata, allora è questo il motivo dell'errore.
Nell'esempio di criterio per le quote mostrato sopra, l'unità di tempo è specificata come
year
, che non è supportata. Pertanto, il deployment del proxy API non riesce e restituisce l'errore:Invalid quota interval time unit year in quota policy Quota-1 in Revision 1 of application Quota_test, in organization aprabhashankar-eval.
Risoluzione
Assicurati che l'unità di tempo specificata nell'elemento <TimeUnit>
del criterio per le quote sia supportata. Ad esempio:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota-1"> <DisplayName>Quota-1</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>month</TimeUnit> </Quota>
InvalidQuotaType
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision [revision_number] No enum constant com.apigee.quota.types.QuotaType.[type].
Esempio di messaggio di errore
Error Saving Revision 1
No enum constant com.apigee.quota.types.QuotaType.window.
Screenshot di esempio
Causa
Se il tipo della quota specificata dall'attributo type
nell'elemento <Quota>
del criterio per le quote non è valido, il deployment del proxy API non riesce.
I tipi di quota supportati sono default
, calendar
, flexi
e rollingwindow
.
Ad esempio, se il tipo di criterio specificato come window
nell'elemento <Quota>
del criterio per le quote, il deployment del proxy API non riesce.
Diagnostica
Identifica il tipo di quota non valido utilizzato nel criterio per le quote. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, il tipo di criterio non valido è
window
:Error Saving Revision 1 No enum constant com.apigee.quota.types.QuotaType.window.
Esamina tutti i criteri per le quote nel proxy API specifico in cui si è verificato l'errore. Se in un criterio per le quote il tipo di quota specificato nell'elemento
<Quota>
corrisponde al tipo non supportato identificato nel precedente passaggio 1, allora l'errore è questo.Ad esempio, il seguente criterio specifica il tipo come
window
, che corrisponde al messaggio di errore:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota-1" type="window"> <DisplayName>Quota-1</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> <StartTime>2017-7-16 12:00:00</StartTime> <MessageWeight ref="messageWeight"/> </Quota>
Poiché l'attributo "type" è impostato su
window
, che non è supportato, il deployment del proxy API non riesce e restituisce l'errore:No enum constant com.apigee.quota.types.QuotaType.window.
Risoluzione
Assicurati che il tipo di quota specificato dall'attributo type
nell'elemento <Quota>
del criterio per le quote sia supportato. Ad esempio:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota-1" type="rollingwindow"> <DisplayName>Quota-1</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> <StartTime>2017-7-16 12:00:00</StartTime> <MessageWeight ref="messageWeight"/> </Quota>
InvalidStartTime
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision [revision_number] Invalid Starttime:[start_time]; Start Time should be of the format yyyy-MM-dd HH:mm:ss.
Esempio di messaggio di errore
Error Saving Revision 1
Invalid Starttime:7-16-2017 12:00:00; Start Time should be of the format yyyy-MM-dd HH:mm:ss.
Screenshot di esempio
Causa
Se il formato dell'ora specificato nell'elemento <StartTime>
del criterio per le quote non è valido, il deployment del proxy API non va a buon fine.
Il formato valido è yyyy-MM-dd HH:mm:ss
, ovvero il formato di data e ora ISO 8601.
Ad esempio, se l'intervallo di tempo specificato nell'elemento <StartTime>
del criterio per le quote è 7-16-2017 12:00:00
, il deployment del proxy API non va a buon fine.
Diagnostica
Identifica l'ora di inizio non valida specificata nei criteri per le quote. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, l'ora di inizio non valida è
7-16-2017 12:00:00
Invalid Starttime:7-16-2017 12:00:00; Start Time should be of the format yyyy-MM-dd HH:mm:ss.
Esamina tutti i criteri per le quote nel proxy API specifico in cui si è verificato l'errore. Se in un criterio per le quote il valore specificato nell'elemento
<StartTime>
corrisponde all'ora di inizio non valida identificata nel passaggio 1 precedente, l'errore è questo.Ad esempio, il seguente criterio specifica il tipo come
7-16-2017 12:00:00
, che corrisponde al messaggio di errore:<?xml version="1.0" encoding="UTF-8"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota-1" type="calendar"> <DisplayName>Quota-1</DisplayName> <Properties /> <Allow count="3" /> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> <StartTime>7-16-2017 12:00:00</StartTime> </Quota>
Poiché il valore impostato per
<StartTime>
è impostato su7-16-2017 12:00:00
, che non è in base al formato data/ora richiesto, il deployment del proxy API non riesce e genera l'errore:Invalid Starttime:7-16-2017 12:00:00; Start Time should be of the format yyyy-MM-dd HH:mm:ss.
Risoluzione
Assicurati che il formato dell'ora di inizio specificata nell'elemento <StartTime>
dei criteri per le quote sia valido in base al formato richiesto yyyy-MM-dd HH:mm:ss
. Ad esempio:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota-1" type="calendar"> <DisplayName>Quota-1</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> <StartTime>2017-7-16 12:00:00</StartTime> </Quota>
StartTimeNotSupported
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision [revision_number] Starttime is not supported for quotatype [quota_type]. Starttime is supported only for calendar based type.
Esempio di messaggio di errore
Error Saving Revision 1
Starttime is not supported for quotatype flexi. Starttime is supported only for calendar based type.
Screenshot di esempio
Causa
Se l'elemento <StartTime>
è specificato in un criterio per le quote il cui tipo di quota non è di tipo calendario, il deployment del proxy API non andrà a buon fine.
L'elemento <StartTime>
è supportato solo per il tipo di quota calendar
.
Ad esempio, se l'attributo type
è impostato su flexi
o rolling window
nell'elemento <Quota>
del criterio per le quote, il deployment del proxy API non riesce.
Diagnostica
Identifica il tipo di quota specificato nel criterio per le quote con errori. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, l'ora di inizio non valida è
flexi
Starttime is not supported for quotatype flexi. Starttime is supported only for calendar based type.
Esamina tutti i criteri per le quote nel proxy API specifico in cui si è verificato l'errore. Se in un criterio per le quote specificato l'attributo type corrisponde al tipo di quota identificato nel precedente passaggio 1 e viene specificato l'elemento
<StartTime>
, allora questa è la causa dell'errore.Ad esempio, il seguente criterio specifica il tipo di quota come
flexi
, che corrisponde al contenuto del messaggio di errore e specifica anche l'elemento<StartTime>
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota-1" type="flexi"> <DisplayName>Quota-1</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> <StartTime>2017-7-16 12:00:00</StartTime> </Quota>
Poiché l'elemento
<StartTime>
è specificato nel criterio per le quote il cui tipo di quota èflexi
, il deployment del proxy API non riesce e restituisce l'errore:Starttime is not supported for quotatype flexi. Starttime is supported only for calendar based type.
Risoluzione
Assicurati che l'elemento <StartTime>
non sia specificato quando il tipo di quota indicato dall'attributo type
nell'elemento <Quota>
è flexi
o rolling window
. Ad esempio:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota-1" type="flexi"> <DisplayName>Quota-1</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> </Quota>
InvalidTimeUnitForDistributedQuota
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision [revision number] Invalid timeunit second for distributed quota.
Esempio di messaggio di errore
Error Saving Revision 1
Invalid timeunit second for distributed quota.
Screenshot di esempio
Causa
Se l'elemento <Distributed>
è impostato su true
e l'elemento <TimeUnit>
è impostato su second
, il deployment del proxy API non riesce. L'unità di tempo second
non è valida per una quota distribuita.
Se l'elemento Distributed
è impostato su true
, il criterio deve mantenere un contatore centrale e sincronizzarlo continuamente su tutti i processori di messaggi. Sarebbe quindi difficile eseguire la sincronizzazione e verificare che il numero di richieste non superi la quota specificata in un breve intervallo di tempo, ad esempio secondi. Per questo motivo, l'unità di tempo second
non viene considerata valida per la quota distribuita.
Diagnostica
Esamina tutti i criteri per le quote nel proxy API specifico in cui si è verificato l'errore. Se esistono criteri per le quote con un elemento <TimeUnit>
impostato su second
e l'elemento <Distributed>
è impostato su true
, allora questa è la causa dell'errore.
Ad esempio, il criterio riportato di seguito ha un elemento <TimeUnit>
impostato su second
e l'elemento <Distributed>
impostato su true
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="CheckQuota" type="calendar"> <DisplayName>CheckQuota</DisplayName> <Properties/> <Allow count="30"/> <Interval>1</Interval> <TimeUnit>second</TimeUnit> <StartTime>2018-8-05 12:00:00</StartTime> <Distributed>true</Distributed> <Synchronous>false</Synchronous> </Quota>
Risoluzione
Assicurati che l'elemento <TimeUnit>
non sia mai impostato su second
se l'elemento <Distributed>
è impostato su true. L'elemento <TimeUnit>
può essere impostato su uno qualsiasi degli altri valori consentiti, ovvero minute, hour, day, week,
o month
. Ad esempio:
<Quota async="false" continueOnError="false" enabled="true" name="CheckQuota" type="calendar"> <DisplayName>CheckQuota</DisplayName> <Properties/> <Allow count="30"/> <Interval>1</Interval> <TimeUnit>hour</TimeUnit> <StartTime>2018-8-05 12:00:00</StartTime> <Distributed>true</Distributed> <Synchronous>false</Synchronous> </Quota>
InvalidSynchronizeIntervalForAsyncConfiguration
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision [revision number] SyncIntervalInSeconds should be a value greater than zero.
Esempio di messaggio di errore
Error Saving Revision 1
SyncIntervalInSeconds should be a value greater than zero.
Screenshot di esempio
Causa
Se il valore specificato per l'elemento <SyncIntervalInSeconds>
all'interno dell'elemento <AsynchronousConfiguration>
in un criterio per le quote è inferiore a zero, il deployment del proxy API non riesce.
Diagnostica
Esamina tutti i criteri per le quote nel proxy API specifico in cui si è verificato l'errore. Se esiste un criterio per le quote in cui l'elemento <SyncIntervalInSeconds>
viene impostato su un valore inferiore a zero, all'interno dell'elemento <AsynchronousConfiguration>
, è questa la causa dell'errore.
Ad esempio, il seguente criterio ha un valore negativo specificato per l'elemento <SyncIntervalInSeconds>
:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota_AsyncConfig" type="calendar"> <DisplayName>Quota_AsyncConfig</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> <StartTime>2017-7-16 12:00:00</StartTime> <Distributed>true</Distributed> <Synchronous>false</Synchronous> <AsynchronousConfiguration> <SyncIntervalInSeconds>-1</SyncIntervalInSeconds> </AsynchronousConfiguration> </Quota>
Risoluzione
Assicurati di specificare sempre un numero intero positivo per l'elemento <SyncIntervalInSeconds>
all'interno dell'elemento <AsynchronousConfiguration>
in un criterio per le quote. Ad esempio:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota_AsyncConfig" type="calendar"> <DisplayName>Quota_AsyncConfig</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> <StartTime>2017-7-16 12:00:00</StartTime> <Distributed>true</Distributed> <Synchronous>false</Synchronous> <AsynchronousConfiguration> <SyncIntervalInSeconds>5</SyncIntervalInSeconds> </AsynchronousConfiguration> </Quota>
InvalidAsynchronizeConfigurationForSynchronousQuota
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision [revision number] AsynchronousConfiguration is not valid for synchronous quota.
Esempio di messaggio di errore
Error Saving Revision 2
AsynchronousConfiguration is not valid for synchronous quota.
Screenshot di esempio
Causa
Se il valore dell'elemento <Synchronous>
è impostato su true
in un criterio per le quote in cui è definita anche una configurazione asincrona mediante l'elemento <AsynchronousConfiguration>
, il deployment del proxy API non riesce.
Diagnostica
Esamina tutti i criteri per le quote nel proxy API specifico in cui si è verificato l'errore. Se esiste un criterio per le quote in cui l'elemento <Synchronous>
è impostato su true
e se è stato definito anche un elemento <AsynchronousConfiguration>
, è questa la causa dell'errore.
Ad esempio, il criterio riportato di seguito ha un elemento <Synchronous>
impostato su true
e definito anche un elemento <AsynchronousConfiguration>
:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota_AsyncConfig" type="calendar"> <DisplayName>Quota_AsyncConfig</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> <StartTime>2017-7-16 12:00:00</StartTime> <Distributed>true</Distributed> <Synchronous>true</Synchronous> <AsynchronousConfiguration> <SyncIntervalInSeconds>1</SyncIntervalInSeconds> </AsynchronousConfiguration> </Quota>
Risoluzione
Assicurati che non venga definita alcuna configurazione asincrona utilizzando l'elemento <AsynchronousConfiguration>
se l'elemento <Synchronous>
è impostato su true
in un criterio per le quote.
L'esempio precedente può essere corretto rimuovendo la sezione <AsynchronousConfiguration>
, come mostrato di seguito:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Quota async="false" continueOnError="false" enabled="true" name="Quota_AsyncConfig" type="calendar"> <DisplayName>Quota_AsyncConfig</DisplayName> <Properties/> <Allow count="3"/> <Interval>1</Interval> <TimeUnit>minute</TimeUnit> <StartTime>2017-7-16 12:00:00</StartTime> <Distributed>true</Distributed> <Synchronous>true</Synchronous> </Quota>