Configurare una query in background

È possibile creare una query, eseguirla in background e visualizzarne i risultati in un secondo momento in Trace Explorer.

La creazione e l'esecuzione di una query in background sono utili quando si dispone di una query che potrebbe richiedere del tempo per essere eseguita. Lo stato e i risultati della query possono essere recuperati in un secondo momento.

Per eseguire una query in background:
  1. Passare alla pagina Trace Explorer.
  2. Assicurarsi che siano selezionati il compartimento e il dominio APM appropriati.
  3. Fare clic sul menu a discesa accanto a Esegui e selezionare Esegui query in background.

    Figura 5-1 Esegui query in background

    Esegui query in background
    Viene visualizzata la finestra Esegui in background con le seguenti opzioni:
  4. Al termine, fare clic su Sottometti.

Visualizza query in background

Dopo aver creato una query in background, selezionare Visualizza query in background per visualizzare l'elenco delle query inizializzate in precedenza e i relativi risultati.

È possibile visualizzare informazioni sulle query in background, ad esempio Istanze, Stato, Righe totali, Pianificazione e Scadenza.

Nota

Una volta raggiunta l'ora di scadenza, i risultati della query salvati da una query in background non sono più accessibili. Il nome e il testo della query in background vengono conservati come query scaduta.
Utilizzare l'icona Azioni (icona Azioni) per eseguire le operazioni riportate di seguito.
  • Modifica dettagli: consente di modificare i dettagli di una query in background. Ad esempio, se è necessario estendere la data di scadenza delle query in background, aggiornare il campo Scadenza. Il valore predefinito Scadenza è 30 giorni.
  • Recupera risultati query: vedere un risultato della query in background.

    Opzione non disponibile per Query aggregata.

  • Nuova query dagli attributi: consente di perfezionare i risultati di una query in background apportando modifiche alla query esistente. Ad esempio, se si desidera che i risultati restituiscano meno righe, è possibile aggiungere una clausola where con un attributo.

    Inoltre, i dati dei risultati delle query possono essere utilizzati come origine per altre query (simili alle query nidificate). Questo strumento consente di creare le query richieste.

  • Riesegui query: rieseguire una query in background. Ciò significa che i dati dei risultati della query esistenti vengono eliminati e la nuova query viene creata utilizzando lo stesso nome.
  • Elimina: consente di eliminare una query in background.

Esecuzione singola

È possibile creare una singola query da eseguire in background e salvare i risultati della query come query in background.

Utilizzare Singola esecuzione se si dispone di una query che potrebbe richiedere del tempo per essere eseguita e che richiede di eseguirla una sola volta (non è necessario eseguirla più volte).

Nella scheda Esecuzione singola, effettuare le operazioni riportate di seguito.

  1. Nome query: immettere un nome per la query.
  2. Descrizione: è possibile immettere una descrizione per la query.
  3. Query: creare una nuova query o modificare quella esistente.
  4. Intervallo di tempo: selezionare l'intervallo di tempo richiesto.
  5. Durata massima dell'esecuzione in minuti: immettere la durata massima dell'esecuzione in minuti.
  6. Numero massimo di righe per esecuzione: immettere il numero massimo di righe per esecuzione.
  7. Ora di scadenza: immettere l'ora di scadenza.
  8. Tipo di ora di scadenza: immettere il tipo di ora di scadenza.
  9. Fare clic su Invia.

Ripeti esecuzione

È possibile creare una query di ripetizione da eseguire in background utilizzando una pianificazione personalizzata e salvare i risultati della query come query in background.

Utilizzare Ripeti esecuzione se si dispone di una query che può richiedere del tempo per essere eseguita e che deve essere eseguita più volte a un intervallo specifico. Utilizzarlo per aggiornare il risultato della query a un intervallo noto. Ad esempio, un riepilogo dei dati dell'ultima settimana aggiornati ogni lunedì mattina.

I risultati della query vengono sostituiti dopo ogni esecuzione.

Nella scheda Ripeti esecuzione, effettuare le operazioni riportate di seguito.

  1. Nome query: immettere un nome per la query.
  2. Descrizione: è possibile immettere una descrizione per la query.
  3. Query: creare una nuova query o modificare quella esistente.
  4. In Configurazione, impostare le seguenti opzioni:
    • Prima esecuzione: selezionare l'ora richiesta per la prima esecuzione.
    • Durata massima dell'esecuzione in minuti: immettere la durata massima dell'esecuzione in minuti.
    • Numero massimo di righe per esecuzione: immettere il numero massimo di righe per esecuzione.
  5. In Pianificazione, selezionare una delle seguenti opzioni:
    • Intervallo di ripetizione
      1. Ripeti ogni: selezionare l'importo dell'ora di ripetizione e specificare il tipo di ripetizione corrispondente.
      2. Periodo di query rispetto all'ora di esecuzione pianificata: selezionare il periodo di query rispetto all'ora di esecuzione pianificata e specificare il tipo di ripetizione corrispondente.
    • Pianificazione Cron
      1. Espressione cronologica:

        Immettere i valori per creare un'espressione cronjob basata su una stringa di cinque campi separati da uno spazio vuoto con la sintassi seguente:

        S1 S2 S3 S4 S5
        Ad esempio, il seguente mostra un cronjob che viene eseguito alle 23:10 del 15° giorno di qualsiasi mese.
        10 23 15 * *
      2. Periodo query relativo all'ora di esecuzione pianificata: specificare quando avviare la query.
  6. Fare clic su Invia.

Query aggregata

È possibile creare una query aggregata da eseguire in background utilizzando una query ripetuta e ottenere i risultati della query cumulativa salvati come query in background.

Utilizzare la interrogazione aggregata se si dispone di una query ripetuta che potrebbe richiedere del tempo per l'esecuzione e la query continua sui risultati cumulativi. I risultati della query vengono aggiunti al risultato precedente dopo ogni esecuzione.

Utilizzare la query aggregata per creare entità personalizzate basate sull'aggregazione di intervalli o trace. Ciò si rivela utile nei casi in cui il volume di inclusione è molto elevato e in un dashboard è necessario presentare un riepilogo/aggregazione di milioni di intervalli.

  1. Nome query: immettere un nome per la query.
  2. Descrizione: è possibile immettere una descrizione per la query.
  3. Query: creare una nuova query o modificare quella esistente.
  4. In Configurazione, impostare le seguenti opzioni:
    • Prima esecuzione: selezionare l'ora richiesta per la prima esecuzione.
    • Durata massima dell'esecuzione in minuti: immettere la durata massima dell'esecuzione in minuti.
    • Numero massimo di righe per esecuzione: immettere il numero massimo di righe per esecuzione.
  5. In Aggregazione, impostare le seguenti opzioni:
    1. Ripeti ogni: selezionare l'importo dell'ora di ripetizione e specificare il tipo di ripetizione corrispondente.
    2. Giorni di conservazione dei dati: immettere il numero di giorni di conservazione dei dati.
  6. Fare clic su Invia.

Ad esempio:

La seguente query di aggregazione in background può essere creata per prima e utilizzata per riepilogare i dati per utente:
show traces userName, time_bucket_start(60) as timeBucket, 
sum(ApdexScore) as apdex, sum(PageViews) as pageViews, 
count(*) as "count", 
sum(PageResponseTime) as totalResponseTime, percentile(PageResponseTime,90) as P90, 
count_distinct(sessionId) as sessions, sum(ErrorCount) as errorCount 
where pageViews > 0 and userName is not omitted 
group by userName, time_bucket_start(60)
Successivamente, è possibile utilizzare la seguente query aggregata per tracciare il numero medio di sessioni per utente nel tempo:
show from query result User avg(sessions) 
timeseries time range using attribute timeBucket