I log delle query contengono potenti informazioni di diagnostica che consentono agli amministratori di analizzare e risolvere i problemi relativi alle prestazioni delle query, agli scenari di errore e ai risultati errati. Quando si abilitano i log delle query in Oracle Analytics, le informazioni sull'analisi, l'ottimizzazione, i piani di esecuzione, le query fisiche, le statistiche di riepilogo e così via vengono scritte nel log delle query.
Accesso ai log delle query
Nota:
Gli autori delle cartelle di lavoro possono anche accedere alle informazioni sulle query, ad esempio l'ora della query, l'ora del server e il tempo di streaming per i componenti di visualizzazione nelle cartelle di lavoro. Vedere Accesso ai log delle query per una cartella di lavoro, alla fine di questo argomento.Livelli di log delle query
Il livello di log determina il dettaglio e la quantità di log generato.
È possibile definire il livello di log globale per il modello semantico (RPD) utilizzando la proprietà Livello di log sistema (in Strumenti, Opzione, Repository) oppure utilizzare la variabile di sessione.
È possibile ignorare il livello di log per un report aggiungendo la variabile LOGLEVEL
alla proprietà Prefisso disponibile nella scheda Avanzate del report.
Per assicurarsi di ottenere log completi evitando accessi alla cache, è possibile includere la variabile DISABLE_CACHE_HIT=1
insieme a LOGLEVEL
.
LOGLEVEL
) sono compresi tra 0 e 7.
LOGLEVEL=0
significa che il log è disabilitato.LOGLEVEL=7
è il livello di log più alto ed è utilizzato principalmente dal team di sviluppo Oracle.LOGLEVEL=2
è appropriato per il tuning delle prestazioni e la comprensione di base.LOGLEVEL=3
è necessario per risolvere i problemi relativi ai filtri di sicurezza dei dati a livello di riga.A seconda del livello di log, i log delle query contengono informazioni sulla query tra cui la richiesta logica, il piano di navigazione e di esecuzione, la query fisica generata, il tempo di esecuzione, le righe e i byte recuperati in diversi nodi di esecuzione e le informazioni relative alla cache.
Gli amministratori possono estrarre i log delle query dalla pagina Esegui istruzione SQL nella console eseguendo la query con le impostazioni di LOGLEVEL
e delle variabili appropriate.
Lettura di un log delle query
Nella pagina Log di sessioni e query sono elencate tutte le query e le sessioni attualmente attive. Gli amministratori possono accedere a questa pagina dalla console.
Ogni voce della pagina fornisce l'accesso al log delle query per una determinata query, al livello impostato, ovvero a livello di modello semantico, sessione o report.
Ogni richiesta dispone di un requestid
univoco in Oracle Analytics.
Query SQL logica
Di seguito è riportato un esempio di query SQL logica in Oracle Analytics.
Di seguito sono riportate alcune variabili comuni che potrebbero essere incluse in una richiesta SQL logica:
QUERY_SRC_CD
: indica l'origine della query: richiesta, report, DV, Esegui istruzione SQL e così via.SAW_SRC_PATH
: se la query viene salvata, indica il percorso della query nel catalogo.SAW_DASHBOARD
: se la query è inclusa in un dashboard, indica il percorso del dashboard nel catalogo.SAW_DASHBOARD_PG
: nome della pagina del dashboard.Richiesta logica
La richiesta logica è la traduzione di una query dal layer di presentazione al layer di modello aziendale e mapping dopo l'aggiunta di filtri di sicurezza, se presenti.
In base alla richiesta logica, Oracle Analytics decide se la query accede a una cache esistente o se deve essere recuperata dal database.
Piano di esecuzione
Il piano di esecuzione è la trasformazione della richiesta logica effettiva in un piano ottimizzato per l'esecuzione. Include un piano di invio per ogni operazione e specifica se l'operazione viene eseguita nel database o in Oracle Analytics. Quando un'operazione viene elaborata in Oracle Analytics, il log delle query indica [for database 0:0,0]
.
Durante l'esecuzione della query, Oracle Analytics effettua esattamente le operazioni incluse in questa struttura. Nei log dettagliati, le informazioni sulle righe elaborate sono disponibili in ogni nodo della struttura di esecuzione.
Richieste fisiche o di database
In base al piano di esecuzione, Oracle Analytics genera codice SQL fisico da eseguire sul database specificato. Potrebbero essere presenti una o più richieste inviate a uno o più database.
Per ogni richiesta fisica inviata al database, esiste un log del numero di righe e byte recuperati.
Quando sono presenti più query, è possibile usare l'ID query (in questo esempio 1914627
) per trovare la corrispondenza con la query esatta registrata nella sezione Sending query to the database
. Ciò consente di mappare la query con le righe recuperate quando sono presenti più richieste di database.
Un report può inviare più query a uno o più database a seconda della struttura del report e della definizione del modello semantico. Ad esempio, in questo log delle query viene indicato che sono state inviate 3 query fisiche al database.
Il log fornisce informazioni simili alle righe elaborate per tutti i nodi del piano di esecuzione. Infine, vengono registrate le righe inviate al client.
Il log include anche un riepilogo finale delle statistiche che include il tempo di esecuzione completo. È possibile correlare il tempo qui indicato per analizzare e diagnosticare problemi relativi alle prestazioni.
Statistiche di riepilogo
Considerazioni sui log delle query
Attività a thread singolo. In circostanze avverse, è possibile che si verifichi un rallentamento delle prestazioni per livelli di log superiori a 2.
I tempi elencati e calcolati si riferiscono al momento in cui le voci vengono scritte nel log e ciò corrisponde quasi sempre al momento in cui si verifica l'evento (ovvero l'attività che ha dato inizio dalla voce del log). A meno che non ci siano altri punti critici che influiscono sulla registrazione.
La creazione dei log delle query è a scopo diagnostico e non è destinata alla raccolta delle informazioni sull'uso. Per informazioni sulla registrazione delle informazioni sull'uso, vedere Registrare le informazioni sull'uso.
Accesso ai log delle query per una cartella di lavoro
Solo gli amministratori possono accedere ai log tramite la pagina Log di sessioni e query nella console. Tuttavia, gli autori del contenuto possono accedere alle informazioni dei log per le query di visualizzazione nelle relative cartelle di lavoro tramite il menu Sviluppatore e questo è uno strumento utile per gli autori che desiderano risolvere i problemi di prestazioni delle query. Per accedere allo strumento relativo alle prestazioni per le cartelle di lavoro (opzione di menu Sviluppatore), gli utenti devono attivare Abilita opzioni sviluppatore nel menu Avanzate in Profilo personale.
Se abilitata, l'opzione di menu Sviluppatore viene visualizzata nel menu della cartella di lavoro.
L'opzione Sviluppatore consente agli utenti di visualizzare e analizzare vari log in tempo reale per qualsiasi visualizzazione su uno sfondo. Sotto lo sfondo viene visualizzato un frame distinto con schede diverse per ogni tipo di informazione. Per impostazione predefinita, i log non vengono popolati o aggiornati quando viene eseguita la visualizzazione.
Selezionare la visualizzazione che si desidera analizzare e fare clic su Aggiorna per generare i log. Dopo aver effettuato l'aggiornamento, vengono visualizzate varie informazioni relative alla visualizzazione ed è possibile analizzare le informazioni dei log per la visualizzazione specifica. Per analizzare più visualizzazioni, è necessario aggiornarle singolarmente e analizzarle una dopo l'altra.
Nota:
Il menu Sviluppatore è disponibile solo per le cartelle di lavoro. Per le analisi classiche e i dashboard è possibile accedere ai log delle query mediante la pagina Log di sessioni e query.