Les instructions de contrôle SPL définissent et gèrent des jeux de données nommés pour les expressions de requête.
.let
Définit un jeu de données nommé comme entrée pour les expressions SPL suivantes. Jeux de données SPL.
Syntaxe
.let <dataset>=<spl-expr>
Paramètres
|
Paramètre |
Type |
Obligatoire |
Description |
|
dataset |
String |
Oui |
Nom du jeu de données. Il peut contenir des lettres, des chiffres et des traits de soulignement (_), doit commencer par une lettre et est sensible à la casse. |
|
spl-expr |
SPLExp |
Oui |
Expression SPL qui génère le jeu de données. |
Exemple
Filtrez et classez les journaux d'accès selon le code d'état, puis affichez les résultats.
-
Instruction SPL
-- Define the SPL processing result as the named dataset 'src' to use as input for subsequent SPL expressions. .let src = * | where status=cast(status as BIGINT); -- Use the named dataset 'src' as input. Filter for data where the status field is 5xx. Define the result as the dataset 'err'. Do not output the result. .let err = $src | where status >= 500 | extend msg='ERR'; -- Use the named dataset 'src' as input. Filter for data where the status field is 2xx. Define the result as the dataset 'ok'. Do not output the result. .let ok = $src | where status >= 200 and status < 300 | extend msg='OK'; -- Output the named datasets 'err' and 'ok'. $err; $ok; -
Données d'entrée
# Entry 1 status: '200' body: 'this is a test' # Entry 2 status: '500' body: 'internal error' # Entry 3 status: '404' body: 'not found' -
Sortie
# Entry 1: Dataset is 'err' status: '500' body: 'internal error' msg: 'ERR' # Entry 2: Dataset is 'ok' status: '200' body: 'this is a test' msg: 'OK'