Gestisci ricerche

Oracle Logging Analytics consente di integrare i dati degli eventi aggiungendo combinazioni campo-valore dalle ricerche. Oracle Logging Analytics utilizza le ricerche per abbinare le combinazioni campo-valore da eventi a una tabella di ricerca esterna e, se abbinate, Oracle Logging Analytics aggiunge le combinazioni campo-valore agli eventi.

Tipi di lookup:
  • Semplice: questa tabella contiene una semplice lista di elementi in cui le righe corrispondono a una singola relazione. Ad esempio, se si crea una tabella di ricerca degli errori, ogni riga può contenere le informazioni relative a un singolo errore, ad esempio ID errore, messaggio di errore, causa e azione correttiva. Vedere Creazione di una ricerca semplice.
  • Dizionario: si tratta di un'opzione più intelligente che consente di racchiudere le relazioni logiche tra campi e i relativi valori utilizzando operatori quali CONTAINS, CONTAINS IGNORE CASE MULTILINE REGEX e EQUAL. Per un elenco completo di operatori, esempi e passi per creare questo tipo di ricerca, vedere Creare una ricerca nel dizionario.
Di seguito sono riportate alcune tabelle di ricerca semplici definite da Oracle attualmente disponibili in Oracle Logging Analytics.
  • Messaggi di errore BEA
  • Messaggi di errore CRS
  • Messaggi di errore OGC
  • Messaggi di errore ORA
  • Messaggi di errore TNS

Per le autorizzazioni per eseguire tutte le operazioni sulle ricerche, vedere Consenti agli utenti di eseguire tutte le operazioni sulle ricerche.

Nota

La dimensione di un singolo file di ricerca non deve superare i 10 MB. Tuttavia, non esiste un limite per il numero di righe nella ricerca.

Nota

Se si desidera impedire a un utente di visualizzare il contenuto di una ricerca, anche indirettamente, a tale utente NON DEVE essere concessa l'autorizzazione per:

  • Carica i log
  • Visualizzare i log che contengono i campi integrati utilizzando tali ricerche limitate

In che modo le ricerche arricchiscono i log

Spesso, i log non contengono tutte le informazioni necessarie per consolidare l'analisi. In questi casi, è possibile creare una tabella di ricerca per raccogliere le informazioni già raccolte per dare maggior senso ai dati nei log. Ad esempio, il campo ID errore negli eventi di log non fornisce una descrizione degli errori. È possibile creare una ricerca che mappa ID errore alle descrizioni e quindi utilizzare le opzioni Arricchimento campo per rendere le descrizioni disponibili per la ricerca nei record di log. Alcuni scenari di esempio in cui è possibile creare ricerche:

  • Inventario prodotti: ID prodotto, specifiche tecniche, prezzo, scorte disponibili, numero di rack
  • Informazioni sul dipendente: ID dipendente, Informazioni personali, organizzazione, ruolo, scala, stipendio, manager
  • Riferimento alla libreria: Casella, autore, riepilogo, edizione, edizioni precedenti, prezzo

Come usare le ricerche

È possibile utilizzare principalmente le ricerche semplici in fase di inclusione utilizzando la funzione Ricerca origine. Vedere Uso delle ricerche in tempo di inclusione nell'origine.

È inoltre possibile utilizzare ricerche semplici al momento della query come mostrato di seguito:

Nella seguente query lookup, il messaggio di errore viene recuperato dalla tabella di ricerca ORA Error Messages mappando il campo ID errore e visualizzato in una tabella di riepilogo insieme ad altri campi come origine log ed entità:

'Error ID' like 'ORA%' | lookup table = 'ORA Error Messages' select errmsg using 'Error ID' = errid | fields -*, 'Log Source', Entity, errmg
  • Informazioni dai registri:
    • Error ID: ID errore come indicato nei log specificati nel formato ORA%
    • Log Source: l'origine log dei log
    • Entity: l'entità dei log
  • Informazioni dalla tabella di ricerca definita da Oracle ORA Error Messages:
    • errid: l'ID errore specificato nel formato ORA%
    • errmsg: il messaggio di errore per l'ID errore

    Gli altri dettagli disponibili nella tabella di ricerca ORA Error Messages sono errcause (causa errore) e erraction (azione errore) per ogni ID errore. Per visualizzare i contenuti della tabella di ricerca, utilizzare il comando searchlookup come indicato di seguito.

    * | searchlookup table = 'ORA Error Messages'

Visualizza il dettaglio della ricerca

  1. Aprire il menu di navigazione e fare clic su Osservabilità e gestione. In Logging Analytics, fare clic su Amministrazione. Viene visualizzata la pagina Panoramica dell'amministrazione.

  2. Le risorse di amministrazione sono elencate nel riquadro di navigazione a sinistra in Risorse. Fare clic su Ricerche.

  3. In Ricerche, fare clic sulla ricerca di cui si desidera visualizzare i dettagli.

    Nella pagina Dettaglio ricerca vengono visualizzati i dettagli forniti durante la creazione e anche il contenuto della tabella di ricerca. È inoltre possibile eseguire azioni quali Sposta risorsa, Aggiungi tag e Elimina. Per informazioni dettagliate su queste azioni, vedere la sezione seguente.

Per eseguire altre azioni sulla ricerca, nella pagina elenco Ricerche selezionare il Compartimento, il Tipo e il Tipo di creazione della ricerca e limitare la ricerca della ricerca nella sezione Filtri. È inoltre possibile includere filtri tag per filtrare le ricerche in base alle tag. Dopo aver identificato la ricerca, fare clic sull'icona Azioni Icona Azioni nella riga della ricerca:

  • Ricarica file: in caso di ricerche create dall'utente, se si dispone di una nuova versione della tabella di ricerca o se un caricamento precedente non è riuscito, è possibile ricaricarlo.

  • Elimina: potrebbe essere necessario eliminare alcune delle ricerche precedenti o inutilizzate. Per eliminare la ricerca, confermare nella finestra di dialogo Elimina ricerca. È possibile eliminare una ricerca solo se creata dall'utente.

  • Copia OCID: l'OCID della risorsa di ricerca viene copiato. Puoi usarlo per fare riferimento a questa risorsa ovunque in Oracle Cloud Infrastructure.
  • Sposta risorsa: viene visualizzata la finestra di dialogo Sposta risorsa in un compartimento diverso. Dalle opzioni, selezionare il compartimento in cui si desidera spostare la ricerca, quindi fare clic su Sposta risorsa.
  • Aggiungi tag: vedere Aggiungi tag alle risorse di Logging Analytics.

Aggiorna una ricerca esistente

  1. Aggiornare il file CSV con le combinazioni campo-valore.

  2. Aprire il menu di navigazione e fare clic su Osservabilità e gestione. In Logging Analytics, fare clic su Amministrazione. Viene visualizzata la pagina Panoramica dell'amministrazione.

  3. Le risorse di amministrazione sono elencate nel riquadro di navigazione a sinistra in Risorse. Fare clic su Ricerche.

  4. In Ricerche, fare clic sull'icona Azioni Menu Azioni nella riga corrispondente alla ricerca che si desidera aggiornare, quindi fare clic su Ricarica file.

    Viene visualizzata la finestra di dialogo Ricarica file.

  5. Selezionare il file CSV di ricerca aggiornato creato in precedenza e fare clic su Carica.

Creare una ricerca semplice

Dopo aver creato la ricerca semplice, eseguire una query con il comando searchlookup per elencare i valori nella ricerca e utilizzare il comando lookup in una query per mappare i campi di output a tali valori.

  1. Creare un file CSV di ricerca con le combinazioni campo-valore. Ad esempio, per creare una ricerca che mappa l'ID errore alle descrizioni:

    errid,description
    02323,Network Not Reachable
    09912,User Activity
    12322,Out of Memory

    Si noti che la prima riga è l'intestazione con titoli errid e description per i valori nelle righe successive.

  2. Aprire il menu di navigazione e fare clic su Osservabilità e gestione. In Logging Analytics, fare clic su Amministrazione. Viene visualizzata la pagina Panoramica dell'amministrazione.

  3. Le risorse di amministrazione sono elencate nel riquadro di navigazione a sinistra in Risorse. Fare clic su Ricerche.

    Viene visualizzata la pagina di elenco delle ricerche. Dal riquadro di navigazione a sinistra selezionare il compartimento in cui deve essere creata la ricerca.

  4. In Ricerche, fare clic su Crea ricerca.

  5. Nella pagina Crea ricerca immettere il nome della ricerca, ad esempio server error code lookups, e una descrizione facoltativa.

  6. In Tipo, selezionare Semplice.

  7. Selezionare il file CSV di ricerca creato in precedenza.

  8. Facoltativamente, espandere la sezione Mostra opzioni avanzate e aggiungere tag alla ricerca. Fare clic su Crea.

Creare una ricerca nel dizionario

Dopo aver creato la ricerca del tipo di dizionario, utilizzare il comando searchlookup per elencare le ricerche. Utilizzare il comando lookup per eseguire il mapping ai campi con qualsiasi query solo dopo aver utilizzato i comandi link o cluster nella query.

Altri argomenti:

Si noti che è possibile utilizzare le ricerche dei tipi di dizionario solo in fase di query e non in fase di inclusione nella funzione di origine.

Per esempi sull'uso della ricerca del dizionario nel cluster e nel collegamento, vedere Usa ricerca del dizionario nel cluster e Usa ricerca del dizionario nel collegamento.

Per un esempio di utilizzo della ricerca del dizionario per fornire la geolocalizzazione, vedere Specificare la geolocalizzazione mediante una ricerca.

  1. Creare un file CSV di ricerca con le combinazioni campo-valore.

    Ad esempio:

    Operator,Condition,Issue,Area
    CONTAINS,message header or abbreviation processing failed,Processing Error,Messaging
    CONTAINS,Failed to associate the transaction context with the response while marshalling,Marshalling Error,Response
    CONTAINS,A RuntimeException was generated by the RMI server,Exception,RMI

    Si noti che la prima riga è l'intestazione in cui Operator e Condition sono i campi obbligatori specificati nello stesso ordine. I parametri successivi vengono elencati nella riga di intestazione dopo i parametri obbligatori. Le righe successive sono i valori dei parametri elencati nella riga di intestazione nello stesso ordine.

    Per l'elenco degli operatori validi e degli esempi da utilizzare, vedere la tabella riportata di seguito.

    Nota:

    • Se un campo contiene una virgola, racchiudere l'intero campo tra virgolette.

    • Se un campo contiene virgolette doppie, eseguire l'escape delle virgolette utilizzando due virgolette doppie.

  2. Aprire il menu di navigazione e fare clic su Osservabilità e gestione. In Logging Analytics, fare clic su Amministrazione. Viene visualizzata la pagina Panoramica dell'amministrazione.

  3. Le risorse di amministrazione sono elencate nel riquadro di navigazione a sinistra in Risorse. Fare clic su Ricerche.

    Viene visualizzata la pagina di elenco delle ricerche. Dal riquadro di navigazione a sinistra selezionare il compartimento in cui deve essere creata la ricerca.

  4. In Ricerche, fare clic sul collegamento Crea ricerca.

  5. Nella pagina Crea ricerca, immettere il nome della ricerca, ad esempio cluster dictionary lookups e una descrizione facoltativa.

  6. In Tipo, selezionare Dizionario.

  7. Selezionare il file CSV di ricerca creato in precedenza.

  8. Facoltativamente, espandere la sezione Mostra opzioni avanzate e aggiungere tag alla ricerca. Fare clic su Crea.

Operatore CIDRMATCH

L'operatore CIDRMATCH supporta la regola dell'operazione di corrispondenza CIDR (instradamento interdominio senza classi) all'interno di una ricerca del dizionario. Ad esempio, il seguente dizionario restituisce Nome di rete come Rete di database se l'indirizzo IP di input rientra nell'intervallo compreso tra 192.0.2.0 e 192.0.2.255:

Operator,Condition,Network Name
CIDRMATCH,192.0.2.10/24,Database Network

Elenco di operatori validi ed esempi per l'utilizzo di tali operatori

Operatore descrizione; Esempio

CONTAINS

True se il valore contiene la stringa specificata nel campo Condizione. Con distinzione tra casi

CONTAINS,Request 'GetResponse' Timed out,Timeout Error

CONTAINS IGNORE CASE

Come sopra, tranne il caso viene ignorato

CONTAINS IGNORE CASE,request 'getresponse' timed out,Timeout Error

CONTAINS REGEX

True se il valore corrisponde all'espressione regolare specificata

CONTAINS REGEX,Request '\S+' Timed out,Timeout Error

CONTAINS IGNORE CASE REGEX

Come sopra, ma ignora il caso

CONTAINS IGNORE CASE REGEX,request '\S+' timed out,Timeout Error

CONTAINS MULTILINE REGEX

Utilizzare questa opzione per confrontare una stringa con più righe

CONTAINS MULTILINE REGEX,Request 'GetResponse' Timed out,Timeout Error

CONTAINS IGNORE CASE MULTILINE REGEX

Come sopra, tranne il caso viene ignorato

CONTAINS IGNORE CASE MULTILINE REGEX,Request 'GetResponse' Timed out,Timeout Error

CONTAINS ONE OF REGEXES

Specificare più espressioni regolari. True se almeno una corrisponde.

Elencare le espressioni regolari all'interno di [] e separarle con una virgola. Le espressioni regolari non possono contenere una virgola.

Se è necessario utilizzare le virgolette doppie all'interno dell'espressione regolare, eseguire l'escape di ogni virgoletta doppia utilizzando un'altra virgoletta doppia.

CONTAINS ONE OF REGEXES,"[Request '\S+' Timed out,Server\S+Timed out]",Timeout Error

NOT CONTAINS

Non contiene la stringa specificata

NOT CONTAINS,Request 'GetResponse' Timed out,Success

EQUAL

Il contenuto è uguale al valore specificato

EQUAL,500,HTTP Server Error

EQUAL IGNORE CASE

Come sopra, tranne il caso viene ignorato

EQUAL,In-Progress,Request In Progress

NOT EQUAL

True se il contenuto non è uguale al valore specificato

NOT EQUAL,200,HTTP Request Failed

STARTS WITH

Confronta con l'inizio del contenuto

STARTS WITH,Request failed with,Fail

ENDS WITH

Confronta con la fine del contenuto

ENDS WITH,timed out,Timeout

IN

True se almeno un valore è uguale

IN,"[500,501,502,503]",HTTP Server Error

IN IGNORE CASE

Come sopra, tranne il caso viene ignorato

IN IGNORE CASE,[fail,timeout,error,fatal],Request Failed

NOT IN

True se il contenuto non è uguale ad alcun valore nell'elenco

NOT IN,"[500,501,503,400,401,404]",HTTP Request Successful

NULL

True se il contenuto nel campo è nullo

NULL,,No Value

NOT NULL

True se il contenuto nel campo non è nullo

NOT NULL,,Value Present

CIDRMATCH

CIDR (Classless Inter-Domain Routing) - Regola operazione di corrispondenza all'interno di una ricerca del dizionario

Vedere Operatore CIDRMATCH.

Elenco di operatori numerici e logici ed esempi

Nota

Assicurarsi che gli operatori numerici non siano combinati con gli operatori stringa nello stesso dizionario. Se gli operatori sono mescolati nello stesso dizionario e nella query viene passato un valore stringa, viene restituito un messaggio di errore relativo al tipo durante la corrispondenza mediante gli operatori numerici.
Operatore descrizione; Esempio

=

Numerico uguale a

=,1,Value is 1

!=

Numerico diverso da

!=,1,Value is Not 1

>

Sopra il valore specificato

>,1,Value is above 1

<

Sotto il valore specificato

<,1,Value is below 1

>=

Superiore o uguale al valore specificato

>=,1,Value is equal or above 1

<=

Inferiore o uguale al valore dato

<=,1,Value is equal or below 1

BETWEEN

Tra i due valori specificati, entrambi inclusi

BETWEEN,1-10,Value is equal or above 1 and equal or below 10

> AND <

Sopra N1 e sotto N2

> AND <,1-10,Above 1 and below 10

>= AND <=

Uguale a Tra. Sopra o uguale a N1 e sotto o uguale a N2

>= AND <=,1-10,Above or equal to 1 and below or equal to 10

>= AND <

Sopra o uguale a N1 e sotto N2

>= AND <,1-10,Above or equal to 1 and below 10

> AND <=

Sopra N1 e sotto o uguale a N2

> AND <=,1-10,Above 1 and below or equal to 10

> OR <

Sopra N1 o sotto N2

> OR <,1-10

Superiore a 1 o inferiore a 10

>= OR <=

Sopra o uguale a N1 o sotto o uguale a N2

>= OR <=,100-10,Above or equal to 100 or below or equal to 10

>= OR <

Sopra o uguale a N1 o sotto N2

>= OR <,10-1,Above or equal to 10 or below 1

> OR <=

Sopra N1 o sotto o uguale a N2

> OR <=,100-10,Above 100 or below or equal to 10

>= OR !=

Sopra o uguale a N1 o diverso da N2

>= OR !=,10-1,Above or equal to 10 or not equal to 1

<= OR !=

Sotto o uguale a N1 o diverso da N2

<= OR !=,10-100,Below or equal to 10 or not equal to 100

>= OR =

Sopra o uguale a N1 o uguale a N2

>= OR =,10-1,Above or equal to 1 or equal to 1

<= OR =

Sotto o uguale a N1 o uguale a N2

<= OR =,10-100,Below or equal to 10 or equal to 100

> AND !=

Sopra N1 e diverso da N2

> AND !=,10-100,Above 10 and not equal to 100

< AND !=

Sotto N1 e diverso da N2

< AND !=,10-1,Below 10 and not equal to 1

Usa commenti durante la definizione delle ricerche nel dizionario

Utilizzare # come primo campo per aggiungere commenti a una ricerca del dizionario. Di seguito è riportato un esempio di ricerca di esempio con commenti.

Operator,Condition,Label,Module
# ----------------------------------
# Startup/Shutdown and Terminations
# ----------------------------------
CONTAINS,Server started in RUNNING mode,Server Started,WebLogic Server
CONTAINS,A critical service failed. The server will shut itself down,Server Shutdown,WebLogic Server
CONTAINS,state changed to FAILED,Server Failed,
CONTAINS,Removing .* from cluster view due to PeerGone,Cluster Removed,WebLogic Server
# ----------------------
# Connection Error / Timeouts and Slowness
# ----------------------
CONTAINS,Unable to connect to WSM policy manager,WSM Policy Manager Connection Error,
CONTAINS REGEX,java.sql.SQLTimeoutException: \S+: user requested cancel of current operation,SQL Timeout,Database
CONTAINS,This member is running extremely slowly and may endanger the rest of the cluster,WebLogic Cluster Slowness,WebLogic Server

Usare la ricerca del dizionario in una query

È possibile utilizzare lo stesso dizionario in più query. Ad esempio, la query seguente applica lo stesso dizionario al campo Message e mostra i risultati aggregati utilizzando la visualizzazione Grafico a torta:

'Log Source' = 'Linux Syslog Logs'
| lookup table = 'Linux Error Categories' select Issue, Area using Message
| stats count by Area

Usare la ricerca del dizionario in una query

Consenti agli utenti di eseguire tutte le operazioni nelle ricerche

Tipo di risorsa individuale: loganalytics-lookup

Parte del tipo di risorsa aggregato: loganalytics-features-family

Dichiarazione dei criteri delle risorse se i criteri familiari non sono definiti:

Caso d'uso Criteri IAM

La ricerca può essere nella tenancy

allow group <user_group> to READ loganalytics-lookup in tenancy

Limitare l'autorizzazione per la ricerca a un compartimento specifico.

allow group <user_group> to READ loganalytics-lookup in compartment <compartment_name>

Tenere presente che per limitare l'autorizzazione alla risorsa di lookup con l'ambito richiesto (tenancy o compartimento) al funzionamento dell'istruzione dei criteri precedente, non devono esistere altre istruzioni dei criteri che coprano la famiglia di tipi di risorsa e un ambito più ampio.

Nota

Se si desidera impedire a un utente di visualizzare il contenuto di una ricerca, anche indirettamente, a tale utente NON DEVE essere concessa l'autorizzazione per:

  • Carica i log
  • Visualizzare i log che contengono i campi integrati utilizzando tali ricerche limitate

Quando si crea un criterio IAM per loganalytics-lookup, è possibile eseguire le operazioni riportate di seguito con ciascun verbo.

Inspect Read Use Manage

N/D

N/D

Registra una ricerca

Gestisci ha lo stesso livello di autorizzazioni e operazioni API di Usa.

In genere, solo gli amministratori dispongono delle autorizzazioni USE e MANAGE per creare o eliminare la ricerca. Se si desidera che i privilegi eseguano query di ricerca, è necessario disporre dell'autorizzazione READ.

Rendiconto della polizza familiare aggregata che copre l'autorizzazione per la risorsa di ricerca:

Caso d'uso Criteri IAM

La ricerca può essere nella tenancy

allow group <user_group> to read loganalytics-features-family in tenancy
Nota

Se Oracle Logging Analytics è stato abilitato utilizzando l'interfaccia utente di inserimento disponibile quando si passa al servizio per la prima volta, alcuni criteri vengono già creati. Vedere Criteri creati durante l'inserimento di Logging Analytics.

Autorizzazioni per l'utilizzo delle risorse di ricerca

In genere, solo gli amministratori dispongono delle autorizzazioni USE e MANAGE per creare o eliminare la ricerca. Se si desidera che i privilegi eseguano query di ricerca, è necessario disporre dell'autorizzazione READ.

Se si sta già utilizzando Log Explorer, SDK o CLI per eseguire le query, si dispone già delle autorizzazioni necessarie per eseguire i comandi di query searchlookup o lookup nelle ricerche esistenti definite da Oracle e create dall'utente.

Se si utilizza il principal dell'istanza per eseguire le query, fornire l'autorizzazione seguente se non è già stato fornito l'accesso loganalytics-features-family al gruppo dinamico:

Allow dynamic-group <dynamic-group-name> to {LOG_ANALYTICS_LOOKUP_READ} in tenancy

O

Allow dynamic-group <dynamic-group-name> to {LOG_ANALYTICS_LOOKUP_READ} in compartment <compartment_name>