Le sezioni seguenti descrivono i problemi noti di Apigee. Nella maggior parte dei casi, i problemi elencati verranno risolti in una release futura.
Problemi noti vari di Edge
Le sezioni seguenti descrivono vari problemi noti di Edge.
Area/Riepilogo
Problemi noti
La scadenza della cache genera un valore cachehit errato
Quando la variabile di flusso cachehit viene utilizzata dopo il criterio LookupCache, a causa del modo in cui vengono inviati i punti di debug per il comportamento asincrono, LookupPolicy compila l'oggetto DebugInfo prima dell'esecuzione del callback, generando un errore.
Soluzione:ripeti la procedura (effettua la seconda chiamata) subito
dopo la prima chiamata.
L'impostazione del criterio InvalidateCache
PurgeChildEntries su true non funziona correttamente
L'impostazione di PurgeChildEntries nel
criterio InvalidateCache dovrebbe eliminare solo i valori dell'elemento KeyFragment, ma
cancella l'intera cache.
Soluzione alternativa: utilizza il
criterio KeyValueMapOperations
per eseguire l'iterazione del versionamento della cache e aggirare la necessità di annullare la convalida della cache.
Le richieste di deployment contemporanee per un proxy API o SharedFlow
possono comportare uno stato incoerente nel server di gestione
in cui vengono mostrate più revisioni come di cui è stato eseguito il deployment.
Questo può accadere, ad esempio, quando vengono eseguite in modo simultaneo pipeline di deployment CI/CD utilizzando revisioni diverse. Per evitare questo problema, evita di eseguire il deployment di proxy API o SharedFlow prima del completamento dell'attuale deployment.
Soluzione alternativa:evita i deployment simultanei di proxy API o SharedFlow.
I conteggi delle chiamate API mostrati in
Edge API Analytics potrebbero contenere
dati duplicati.
A volte Edge API Analytics può contenere dati duplicati per le chiamate API. In questo caso, i conteggi mostrati per le chiamate API in Edge API Analytics sono superiori ai valori paragonabili mostrati negli strumenti di analisi di terze parti.
Le sezioni seguenti descrivono i problemi noti relativi all'interfaccia utente di Edge.
Area
Problemi noti
Impossibile accedere alla pagina di amministrazione della zona SSO di Edge dalla barra di navigazione dopo che l'organizzazione è stata mappata a una zona di identità
Quando colleghi un'organizzazione a una zona di identità,
non puoi più accedere alla pagina di amministrazione della zona SSO di Edge dalla barra di navigazione di sinistra selezionando Amministrazione > SSO. Come soluzione alternativa, vai direttamente alla pagina utilizzando il seguente URL:
https://apigee.com/sso
Problemi noti relativi al portale integrato
Le sezioni seguenti descrivono i problemi noti del portale integrato.
Ad esempio, le seguenti funzionalità della specifica OpenAPI 3.0 non sono ancora supportate:
Proprietà allOf per combinare ed estendere gli schemi
Riferimenti remoti
Se nella specifica OpenAPI viene fatto riferimento a una funzionalità non supportata, in alcuni casi gli strumenti la ignorano, ma visualizzano comunque la documentazione di riferimento dell'API. In altri casi, una funzionalità non supportata causerà errori che impediscono il rendering corretto della documentazione di riferimento dell'API. In entrambi i casi, dovrai modificare la specifica OpenAPI per evitare di utilizzare la funzionalità non supportata finché non sarà supportata in una release futura.
Nota: poiché l'editor delle specifiche è meno restrittivo di SmartDocs durante il rendering della documentazione di riferimento dell'API,
potresti riscontrare risultati diversi tra gli strumenti.
Quando utilizzi Prova questa API nel portale, l'intestazione Accept è impostata su application/json indipendentemente dal valore impostato per consumes nella specifica OpenAPI.
La disconnessione singola (SLO) con il provider di identità SAML non è supportata per i domini personalizzati. Per attivare un dominio personalizzato con un provider di identità SAML, lascia vuoto il campo URL di disconnessione quando configuri le impostazioni SAML.
Amministratore del portale
Al momento non sono supportati gli aggiornamenti simultanei del portale (ad esempio modifiche a pagine, temi, CSS o script) da parte di più utenti.
Se elimini una pagina di documentazione di riferimento dell'API dal portale, non è possibile ricrearla. Dovrai eliminare e aggiungere nuovamente il prodotto API e rigenerare la documentazione di riferimento dell'API.
La ricerca verrà integrata nel portale integrato in una versione futura.
Problemi noti di Edge for Private Cloud
Le sezioni seguenti descrivono i problemi noti di Edge per il cloud privato.
Area
Problemi noti
Edge for Private Cloud 4.53.01
443272053: Errori di Datastore nei componenti edge
In Edge for Private Cloud 4.53.00 o versioni successive, un tipo specifico di interazione tra Cassandra e i componenti dell'applicazione (server di gestione, processore di messaggi o router) può causare errori nel datastore. Quando si verifica un errore di questo tipo, nei log di sistema del componente dell'applicazione specifico vengono visualizzati log con il seguente pattern:
com.datastax.driver.core.exceptions.ProtocolError: An unexpected protocol error occurred on host /WW.XX.YY.ZZ:9042.
Questi errori si verificano perché gli avvisi vengono generati dal database Cassandra, ma il componente dell'applicazione non è in grado di gestirli. Per la mitigazione, evita o sopprimi gli avvisi nei nodi Cassandra. La maggior parte delle volte, gli avvisi vengono generati a causa di un numero eccessivo di indicatori di eliminazione. Per risolvere gli avvisi associati a un numero eccessivo di indicatori di eliminazione, puoi seguire una o una combinazione delle opzioni elencate di seguito:
Riduci gc_grace_seconds: per la tabella visualizzata nel messaggio di log associato all'errore, riduci gc_grace_seconds eseguendo il seguente comando come mostrato di seguito tramite cqlsh:
# Below command sets gc_grace_seconds of kms.oauth_20_access_tokens to 1 day from default 10 days ALTER TABLE kms.oauth_20_access_tokens WITH gc_grace_seconds = '86400';
Aumenta le soglie di tombstone in Cassandra per generare avvisi. Per farlo, segui le istruzioni riportate di seguito:
Su un nodo Cassandra, crea o modifica il file $APIGEE_ROOT/customer/application/cassandra.properties
Aumenta la soglia di avviso di Tombstone a 100.000 rispetto al valore predefinito di 10.000 o imposta valori più grandi in base alle esigenze aggiungendo la seguente riga conf_cassandra_tombstone_warn_threshold=100000
Assicurati che il file precedente sia di proprietà dell'utente Apigee e sia leggibile: chown apigee:apigee $APIGEE_ROOT/customer/application/cassandra.properties
Riavvia l'applicazione Cassandra sul nodo: apigee-service apigee-cassandra restart
Ripeti i passaggi precedenti su ciascun nodo Cassandra, uno alla volta.
42733857: Latenza nell'aggiornamento delle mappe chiave-valore (KVM) criptate
Quando si lavora con mappe chiave-valore criptate che contengono un numero elevato di voci, gli utenti potrebbero riscontrare latenze durante l'aggiunta o l'aggiornamento delle voci, tramite le API di gestione o l'elemento PUT all'interno del criterio KeyValueMapOperations . L'entità dell'impatto sulle prestazioni è generalmente proporzionale al numero totale di voci memorizzate nella KVM criptata.
Per risolvere questo problema, è consigliabile che gli utenti evitino di creare KVM criptate con un numero eccessivo di voci. Una soluzione valida è dividere un KVM di grandi dimensioni in più KVM più piccoli. Inoltre, se il caso d'uso lo consente, la migrazione a una KVM non criptata può anche fungere da strategia di mitigazione efficace. Tieni presente che Apigee è a conoscenza di questo problema e prevede di rilasciare una correzione in una patch futura.
Callout Java
I callout Java personalizzati che tentano di caricare il provider di crittografia Bouncy Castle utilizzando il nome "BC" potrebbero non riuscire perché il provider predefinito è stato modificato in Bouncy Castle FIPS per supportare FIPS. Il nuovo nome del fornitore da utilizzare è "BCFIPS".
Edge for Private Cloud 4.53.00
443272053: Errori di Datastore nei componenti edge
In Edge for Private Cloud 4.53.00 o versioni successive, un tipo specifico di interazione tra Cassandra e i componenti dell'applicazione (server di gestione, processore di messaggi o router) può causare errori nel datastore. Quando si verifica un errore di questo tipo, nei log di sistema del componente dell'applicazione specifico vengono visualizzati log con il seguente pattern:
com.datastax.driver.core.exceptions.ProtocolError: An unexpected protocol error occurred on host /WW.XX.YY.ZZ:9042.
Questi errori si verificano perché gli avvisi vengono generati dal database Cassandra, ma il componente dell'applicazione non è in grado di gestirli.Per mitigarli, evita o sopprimi gli avvisi nei nodi Cassandra. La maggior parte delle volte, gli avvisi vengono generati a causa di un numero eccessivo di indicatori di eliminazione. Per risolvere gli avvisi associati a un numero eccessivo di indicatori di eliminazione, puoi seguire una o una combinazione delle opzioni elencate di seguito:
Riduci gc_grace_seconds: per la tabella visualizzata nel messaggio di log associato all'errore, riduci gc_grace_seconds eseguendo il seguente comando come mostrato di seguito tramite cqlsh:
# Below command sets gc_grace_seconds of kms.oauth_20_access_tokens to 1 day from default 10 days ALTER TABLE kms.oauth_20_access_tokens WITH gc_grace_seconds = '86400';
Aumenta le soglie di tombstone in Cassandra per generare avvisi. Per farlo, segui le istruzioni riportate di seguito:
Su un nodo Cassandra, crea o modifica il file $APIGEE_ROOT/customer/application/cassandra.properties
Aumenta la soglia di avviso di Tombstone a 100.000 rispetto al valore predefinito di 10.000 o imposta valori più grandi in base alle esigenze aggiungendo la seguente riga conf_cassandra_tombstone_warn_threshold=100000
Assicurati che il file precedente sia di proprietà dell'utente Apigee e sia leggibile: chown apigee:apigee $APIGEE_ROOT/customer/application/cassandra.properties
Riavvia l'applicazione Cassandra sul nodo: apigee-service apigee-cassandra restart
Ripeti i passaggi precedenti su ciascun nodo Cassandra, uno alla volta.
42733857: Latenza nell'aggiornamento delle mappe chiave-valore (KVM) criptate
Quando si lavora con mappe chiave-valore criptate che contengono un numero elevato di voci, gli utenti potrebbero riscontrare latenze durante l'aggiunta o l'aggiornamento delle voci, tramite le API di gestione o l'elemento PUT all'interno del criterio KeyValueMapOperations . L'entità dell'impatto sulle prestazioni è generalmente proporzionale al numero totale di voci memorizzate nella KVM criptata.
Per risolvere questo problema, è consigliabile che gli utenti evitino di creare KVM criptate con un numero eccessivo di voci. Una soluzione valida è dividere un KVM di grandi dimensioni in più KVM più piccoli. Inoltre, se il caso d'uso lo consente, la migrazione a una KVM non criptata può anche fungere da strategia di mitigazione efficace. Tieni presente che Apigee è a conoscenza di questo problema e prevede di rilasciare una correzione in una patch futura.
412696630: Impossibile caricare i keystore all'avvio
Il caricamento di uno o più keystore all'avvio dei componenti edge-message-processor o edge-router potrebbe non riuscire a intermittenza, causando errori di traffico quando il keystore viene utilizzato da un proxy API o in un host virtuale.
Per risolvere il problema, puoi procedere nel seguente modo:
In un nodo del processore di messaggi, aggiungi o modifica il file $APIGEE_ROOT/customer/application/message-processor.properties
Aggiungi proprietà conf_deployment_bootstrap.executor.thread.count=1
Salva il file e assicurati che sia leggibile e di proprietà dell'utente Apigee chown apigee:apigee $APIGEE_ROOT/customer/application/message-processor.properties
Riavvia il servizio di elaborazione dei messaggi apigee-service edge-message-processor restart
Ripeti i passaggi precedenti su ogni nodo del processore di messaggi uno alla volta.
In un nodo router, aggiungi o modifica il file $APIGEE_ROOT/customer/application/router.properties
Aggiungi proprietà conf_deployment_bootstrap.executor.thread.count=1
Salva il file e assicurati che sia leggibile e di proprietà dell'utente Apigee chown apigee:apigee $APIGEE_ROOT/customer/application/router.properties.
Riavvia il servizio router apigee-service edge-router restart.
Ripeti i passaggi precedenti su ciascun nodo del router uno alla volta.
Callout Java
I callout Java personalizzati che tentano di caricare il provider di crittografia Bouncy Castle utilizzando il nome "BC" potrebbero non riuscire perché il provider predefinito è stato modificato in Bouncy Castle FIPS per supportare FIPS. Il nuovo nome del fornitore da utilizzare è "BCFIPS".
Aggiornamento Mint di Edge for Private Cloud 4.52.01
Questo problema riguarda solo gli utenti che utilizzano MINT o che hanno abilitato MINT in Edge per le installazioni di Private Cloud.
Componente interessato: edge-message-processor
Problema: se hai attivato la monetizzazione e stai installando la versione 4.52.01 come installazione pulita o stai eseguendo l'upgrade da versioni precedenti di Private Cloud, si verifica un problema con i processori di messaggi. Si verificherà un aumento graduale del numero di thread aperti, con conseguente esaurimento delle risorse. Nel file system.log di edge-message-processor viene visualizzata la seguente eccezione:
Di recente è stata scoperta una vulnerabilità Denial of Service (DoS) in più implementazioni del protocollo HTTP/2 (CVE-2023-44487), inclusa Apigee Edge per Private Cloud. La vulnerabilità potrebbe causare un attacco DoS alla funzionalità di gestione delle API Apigee.
Per maggiori dettagli, consulta il bollettino sulla sicurezza di Apigee GCP-2023-032.
I componenti router e server di gestione di Edge for Private Cloud sono esposti a internet e possono essere potenzialmente vulnerabili. Sebbene HTTP/2 sia abilitato sulla porta di gestione
di altri componenti specifici di Edge di Edge for Private Cloud, nessuno di questi componenti è
esposto a internet. Sui componenti non Edge, come Cassandra, Zookeeper e altri,
HTTP/2 non è abilitato. Ti consigliamo di procedere come segue per risolvere la vulnerabilità di Edge for Private Cloud:
Upgrade di Postgresql durante l'aggiornamento alla versione 4.52
Apigee-postgresql ha problemi con l'upgrade da Edge for Private Cloud
versione 4.50 o 4.51 alla versione 4.52. I problemi si verificano principalmente
quando il numero di tabelle è superiore a 500.
Puoi controllare il numero totale di tabelle in Postgres eseguendo la query SQL riportata di seguito:
149245401: Le impostazioni del pool di connessioni LDAP per JNDI configurate tramite la
risorsa LDAP
non vengono applicate e i valori predefiniti di JNDI causano connessioni monouso ogni volta.
Di conseguenza, le connessioni vengono aperte
e chiuse ogni volta per un singolo utilizzo, creando un numero elevato di
connessioni all'ora al server LDAP.
Soluzione temporanea:
Per modificare le proprietà del pool di connessioni LDAP, segui
i passaggi riportati di seguito per impostare una modifica globale in tutte le policy LDAP.
Crea un file di proprietà di configurazione se non esiste già:
Aggiungi quanto segue al file (sostituisci i valori delle proprietà JNDI (Java Naming and Directory Interface) in base al requisito di configurazione della risorsa LDAP).
Assicurati che il file
/opt/apigee/customer/application/message-processor.properties sia
di proprietà di apigee:apigee.
Riavvia ogni processore di messaggi.
Per verificare che le proprietà JNDI del pool di connessioni
siano effettive, puoi
eseguire un tcpdump per osservare il comportamento del pool di connessioni LDAP
nel tempo.
Latenza elevata di elaborazione delle richieste
139051927: Le latenze di elaborazione del proxy elevate rilevate nel processore di messaggi
interessano
tutti i proxy API. I sintomi includono ritardi di 200-300 ms nei tempi di elaborazione rispetto ai tempi di risposta normali dell'API e possono verificarsi in modo casuale anche con un TPS basso. Ciò può verificarsi quando più di 50 server di destinazione
in cui un processore di messaggi stabilisce connessioni.
Causa principale:
I processori di messaggi conservano una cache che mappa l'URL del server di destinazione all'oggetto HTTPClient per
le connessioni in uscita ai server di destinazione. Per impostazione predefinita, questa impostazione è impostata su 50, un valore
troppo basso per la maggior parte dei deployment. Quando un deployment ha più combinazioni di organizzazione/ambiente in una configurazione
e un numero elevato di server di destinazione che superano complessivamente 50, gli URL dei server di destinazione
vengono continuamente rimossi dalla cache, causando latenze.
Convalida:Per determinare se l'eliminazione dell'URL del server di destinazione sta causando il problema di latenza, cerca la parola chiave "onEvict" o "Eviction" nei
system.logs di Message Processor. La loro presenza nei log indica che gli URL del server di destinazione
vengono eliminati dalla cache HTTPClient perché le dimensioni della cache sono troppo piccole.
Soluzione alternativa:
Per Edge for Private Cloud versioni 19.01 e 19.06, puoi modificare e configurare la cache HTTPClient, /opt/apigee/customer/application/message-processor.properties:
Quindi riavvia il processore di messaggi. Apporta le stesse modifiche per tutti i processori di messaggi.
Il valore 500 è un esempio. Il valore ottimale per la configurazione deve essere maggiore del numero di server di destinazione a cui si connette il processore di messaggi. Non ci sono effetti collaterali
dall'impostazione
di questa proprietà su un valore più alto e l'unico effetto sarebbe un miglioramento dei tempi di elaborazione delle richieste proxy del processore di messaggi.
Nota:Edge per Private Cloud versione 50.00 ha l'impostazione predefinita di 500.
Più voci per le mappe chiave-valore
157933959: Inserimenti e aggiornamenti simultanei nella stessa mappa chiave-valore (KVM) con ambito a livello di
organizzazione o ambiente causano dati incoerenti e aggiornamenti persi.
Nota: questa limitazione si applica solo a Edge per il cloud privato. Edge per il cloud pubblico e ibrido non presenta questa limitazione.
Per una soluzione alternativa in Edge for Private Cloud, crea il KVM nell'ambito
apiproxy.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-15 UTC."],[],[],null,[]]