Monitoraggio dell'uso e della disponibilità della memoria per la concorrenza con provisioning eseguito
Scopri come monitorare l'uso e la disponibilità della memoria per l'accesso concorrente con provisioning eseguito da OCI Functions.
OCI Functions ha un limite per la quantità totale di memoria disponibile per la concorrenza di cui è stato eseguito il provisioning per tutte le funzioni in un'area geografica. Il limite è denominato provisioninged-concurrency-mb e specifica la quantità massima di memoria che può essere allocata per la concorrenza con provisioning eseguito.
Il limite di memoria provisioning eseguito-concurrency-mb ha un valore predefinito, come illustrato nella sezione Limiti funzione. Il valore predefinito potrebbe essere già stato aumentato nella tenancy, forse in risposta alle richieste di supporto registrate in precedenti occasioni in cui la capacità di memoria era stata superata.
È possibile utilizzare la console per visualizzare il valore corrente del limite di memoria provisioning eseguito in un'area (vedere Visualizzazione del limite di memoria corrente per la concorrenza con provisioning eseguito).
Se OCI Functions richiede più memoria per la concorrenza di cui è stato eseguito il provisioning per evitare la latenza iniziale quando si richiamano le funzioni, è possibile inviare una richiesta per aumentare il limite di memoria di tipo provisioning (vedere Richiesta di aumento del limite del servizio).
Anziché attendere il raggiungimento del limite di memoria di provisioning eseguito e quindi soddisfare il requisito, è possibile utilizzare Oracle Cloud Infrastructure Monitoring e la metrica AllocatedProvisionedConcurrency
per monitorare la quantità di memoria disponibile per l'accesso concorrente di cui è stato eseguito il provisioning. Si noti che il valore della metrica AllocatedProvisionedConcurrency
corrisponde alla quantità di memoria allocata. La quantità di memoria utilizzata in realtà per la concorrenza di cui è stato eseguito il provisioning è sempre inferiore o uguale al valore della metrica AllocatedProvisionedConcurrency
. Per ulteriori informazioni, vedere Visualizzazione della quantità di memoria allocata di recente per l'esecuzione di funzioni concorrenti.
È inoltre possibile utilizzare la metrica AllocatedProvisionedConcurrency
per creare un allarme per notificare se l'allocazione della memoria ad accesso concorrente di cui è stato eseguito il provisioning supera una soglia definita dall'utente. Per ulteriori informazioni, vedere Creazione di un allarme soglia di allocazione della memoria ad accesso concorrente con provisioning eseguito.
Visualizzazione del limite di memoria corrente per la concorrenza con provisioning eseguito
Per visualizzare il limite di memoria corrente per la concorrenza di cui è stato eseguito il provisioning:
-
Aprire il menu di navigazione e selezionare Governance & Administration. In Gestione tenancy, selezionare Limiti, quote e uso.
- Selezionare Funzioni dalla lista Servizio.
-
Selezionare l'area dalla lista Ambito.
-
Selezionare il compartimento radice dalla lista Compartimento.
Il limite provisioned-concurrency-mb mostra il limite di memoria corrente per la concorrenza di cui è stato eseguito il provisioning.
- (Facoltativo) Per richiedere memoria aggiuntiva per la concorrenza di cui è stato eseguito il provisioning, selezionare il menu accanto al limite mb-valuta di cui è stato eseguito il provisioning, selezionare Apri richiesta di supporto e seguire le istruzioni.
Visualizzazione della quantità di memoria allocata di recente per la concorrenza con provisioning eseguito
Per visualizzare la quantità di memoria allocata di recente per la concorrenza di cui è stato eseguito il provisioning:
-
Aprire il menu di navigazione e selezionare Osservabilità e gestione. In Monitoraggio, selezionare Explorer metriche.
- Utilizzare i campi Ora di inizio e Ora di fine per specificare un periodo di tempo rappresentativo da analizzare.
- Nel pannello Query 1 creare una query come indicato di seguito.
- Per Compartimento, selezionare il compartimento radice.
- Per Spazio di nomi metrica, selezionare oci_faas.
- Selezionare l'opzione Modalità avanzata e immettere una delle query riportate di seguito nell'editor di codici query.
- Per mostrare la quantità totale di memoria allocata per la concorrenza con provisioning eseguito per tutte le funzioni della tenancy a intervalli di 5 minuti, durante il periodo di tempo specificato, immettere la query seguente:
AllocatedProvisionedConcurrency[5m].groupBy(resourceId).max().grouping().sum()
- Per visualizzare la quantità totale di memoria allocata per la concorrenza con provisioning eseguito per una funzione specifica a intervalli di 5 minuti, durante il periodo di tempo specificato, immettere la query seguente:
AllocatedProvisionedConcurrency[5m]{resourceId = "<function-OCID>"}.max()
dove <function-OCID> è l'OCID di una funzione. Ad esempio:
AllocatedProvisionedConcurrency[5m]{resourceId = "ocid1.fnfunc.oc1.phx.aaaa____uxoa"}.max()
- Per mostrare la quantità totale di memoria allocata per la concorrenza con provisioning eseguito per tutte le funzioni della tenancy a intervalli di 5 minuti, durante il periodo di tempo specificato, immettere la query seguente:
-
Selezionare Aggiorna grafico.
Il grafico aggiorna e mostra la quantità di memoria allocata per la concorrenza con provisioning eseguito durante il periodo di tempo selezionato.
Creazione di un allarme soglia di allocazione della memoria ad accesso concorrente con provisioning eseguito
Per creare un allarme attivato quando viene eseguito il provisioning dell'allocazione della memoria concorrente supera una soglia definita:
-
Aprire il menu di navigazione e selezionare Osservabilità e gestione. In Monitoraggio, selezionare Definizioni allarmi.
- Selezionare Crea allarme.
- In Nome allarme, immettere un nome significativo per l'allarme. Evitare di fornire informazioni riservate.
- Selezionare l'opzione Passa alla modalità avanzata.
- Nell'area Dettagli metrica specificare la metrica da valutare per l'allarme, come indicato di seguito.
- Per Compartimento, selezionare il compartimento radice.
- Per Spazio di nomi metrica, selezionare oci_faas.
- Nell'area Regola trigger, specificare la condizione che deve essere soddisfatta affinché l'allarme venga attivato:
- Minuti ritardo trigger: immettere il numero di minuti durante i quali la condizione deve essere mantenuta affinché l'allarme venga attivato.
- Gravità allarme: selezionare l'importanza da assegnare a una notifica che l'allarme è stato attivato.
-
Editor di codici query: immettere una query per definire una condizione che, una volta soddisfatta, causi l'attivazione dell'allarme, come indicato di seguito.
- Se si desidera che l'allarme venga attivato quando l'allocazione della memoria per la concorrenza di cui è stato eseguito il provisioning supera un determinato importo, immettere la query seguente:
AllocatedProvisionedConcurrency[5m].grouping().sum() > <memory-threshold>
dove <memory-threshold> è una quantità di memoria (in MiB) da utilizzare come soglia, oltre la quale si desidera attivare l'allarme.
Ad esempio, potrebbe essere necessario attivare un allarme quando la quantità di memoria allocata per la concorrenza con provisioning eseguito supera il 70% della memoria totale disponibile per la concorrenza con provisioning eseguito. Se la memoria totale per la concorrenza con provisioning eseguito è di 40 GB (40.960 MiB), immettere la query seguente:
AllocatedProvisionedConcurrency[5m].grouping().sum() > 28672
- Se si desidera che l'allarme venga attivato quando l'allocazione della memoria per la concorrenza di cui è stato eseguito il provisioning per una funzione specifica supera un determinato importo, immettere la query seguente:
AllocatedProvisionedConcurrency[5m]{resourceId = "<function-OCID>"}.max() > <memory-threshold>
Dove:- <function-OCID> è l'OCID della funzione
- <memory-threshold> è una quantità di memoria (in MiB) da utilizzare come soglia, oltre la quale si desidera attivare l'allarme.
Ad esempio, potrebbe essere necessario attivare un allarme quando la quantità di memoria allocata per la concorrenza di cui è stato eseguito il provisioning per una singola funzione supera il 10% della memoria totale disponibile per la concorrenza di cui è stato eseguito il provisioning. Se la memoria totale disponibile per la concorrenza con provisioning eseguito è di 40 GB (40.960 MiB), immettere la query seguente:
AllocatedProvisionedConcurrency[5m]{resourceId = "ocid1.fnfunc.oc1.phx.aaaa____uxoa"}.max() > 4096
- Se si desidera che l'allarme venga attivato quando l'allocazione della memoria per la concorrenza di cui è stato eseguito il provisioning supera un determinato importo, immettere la query seguente:
- Selezionare l'opzione Passa a modalità base.
- Nell'area Definire le notifiche di allarme:
- In Destinazione specificare dove inviare le notifiche quando l'allarme viene attivato:
- Servizio di destinazione: selezionare Notifiche.
- Compartimento: selezionare il compartimento contenente le risorse che emettono le metriche valutate dall'allarme. Il compartimento selezionato è anche la posizione di memorizzazione dell'allarme.
- Argomento: l'argomento da utilizzare per le notifiche. Ogni argomento supporta uno o più protocolli di sottoscrizione, ad esempio PagerDuty. Se un argomento appropriato non esiste già, selezionare Crea un argomento e definire un nuovo argomento. Per informazioni, vedere Creazione di un allarme di base.
- Per Raggruppamento messaggi, selezionare una delle seguenti opzioni:
- Raggruppare le notifiche nei flussi di metriche: tenere traccia collettivamente dello stato delle metriche in tutti i flussi di metriche. Invia un messaggio quando lo stato della metrica in tutti i flussi di metriche cambia.
- Dividi notifiche per flusso di metriche: consente di tenere traccia singolarmente dello stato delle metriche per flusso di metriche. Invia un messaggio quando cambia lo stato della metrica per ogni flusso di metriche. Per un esempio, vedere Scenario: Dividi messaggi per flusso di metriche.
- In Formato messaggio, selezionare una delle seguenti opzioni:
- Invia messaggi formattati: layout semplificato e intuitivo. Per visualizzare i protocolli di sottoscrizione e i tipi di messaggio supportati per i messaggi formattati (opzioni diverse da Raw), vedere Formattazione descrittiva.
- Invia messaggi Pretty JSON (testo raw con interruzioni di riga): JSON con nuove righe e rientri.
- Invia messaggi raw: blob JSON raw.
- Per eliminare le valutazioni e le notifiche per un periodo di tempo specificato, selezionare Sopprimi notifiche. Questa opzione è utile per evitare notifiche di allarme durante i periodi di manutenzione del sistema. Specificare un'ora di inizio, un'ora di fine e una descrizione facoltativa. Vedere Best practice per gli allarmi e Soppressione di un singolo allarme.
- Per salvare l'allarme senza iniziare a valutare i dati delle metriche, deselezionare la casella di controllo Abilita questo allarme?.
- In Destinazione specificare dove inviare le notifiche quando l'allarme viene attivato:
- Selezionare Salva allarme.