extract
Utilizzare il comando extract
per ottenere estratti di un campo esistente utilizzando un'espressione regolare. Il comando acquisirà gli estratti risultanti nei campi virtuali utilizzando i nomi forniti per i gruppi di espressioni regolari.
-
Il comando
extract
non può essere utilizzato nel campo Contenuto del log originale. Il campo predefinito, se non specificato, è Messaggio.Per poter utilizzare il comando
extract
sul valore del campo Contenuto log originale, prima copiare il campo Contenuto log originale in un campo stringa, quindi eseguireextract
nel nuovo campo stringa. -
I comandi di elaborazione delle stringhe, ad esempio
extract
, richiedono più risorse. A causa di ciò, l'esecuzione del comandoextract
su un numero elevato di record di log o su valori di campo di grandi dimensioni non è consigliata. Estrarre invece questi valori utilizzando le definizioni campi estesi (EFD) o le etichette nell'origine log.
Sintassi
extract field = <field_to_parse> (<regular_expression>)
Parametri
La tabella seguente elenca i parametri utilizzati in questo comando e le relative descrizioni.
Parametro | descrizione; |
---|---|
|
Specificare il campo che deve essere analizzato utilizzando l'espressione regolare. |
|
Specificare l'espressione regolare da utilizzare per l'analisi del campo esistente. Il formato del costrutto dell'espressione regolare deve essere coerente con la corrispondenza del pattern RE2J e deve contenere almeno un gruppo di acquisizione denominato. Vedere Sintassi delle espressioni regolari. |
Il comando seguente separa il contenuto del campo entità in due parti. Ad esempio, il valore entità host-phx-1.oci.oraclecloud.com
con pattern viene suddiviso in due campi virtuali denominati Host e Dominio, con i valori host-phx-1
e oci.oraclecloud.com
.
* | extract field = Entity '(?P<Host>\w+)\.?(?P<Domain>.*)'
Il comando seguente crea un nuovo campo virtuale denominato ErrorCode che contiene il suffisso del campo ErrorInfo
in modo che possa essere utilizzato come chiave nella tabella di ricerca Error Ids
. Può essere utilizzato per cercare la descrizione e i passi di correzione da una tabella di ricerca e fornire un riepilogo in formato tabulare del numero di volte in cui si è verificato ogni errore e della modalità di correzione.
'Log Source' like '%database%'
| extract field = ErrorInfo 'ora-(?P<ErrorCode>.*)'
| lookup table="error ids" select error_description,
error_remediation using error_id = ErrorCode
| stats count, unique(error_description),
unique(error_remediation) by ErrorInfo