Splunk - Rechercher dans les macros

Les macros de recherche sont des blocs réutilisables de SPL (Search Processing Language) que vous pouvez insérer dans d'autres recherches. Ils sont utilisés lorsque vous souhaitez utiliser la même logique de recherche sur différentes parties ou valeurs de l'ensemble de données de manière dynamique. Ils peuvent prendre des arguments de manière dynamique et le résultat de la recherche sera mis à jour selon les nouvelles valeurs.

Création de macro

Pour créer la macro de recherche, nous allons dans le settings → Advanced Search → Search macros → Add new. Cela fait apparaître l'écran ci-dessous où nous commençons à créer la macro.

Scénario de macro

Nous voulons afficher diverses statistiques sur la taille du fichier à partir du web_applicationsJournal. Les statistiques concernent les valeurs max, min et moyenne de la taille du fichier en utilisant le champ octets dans le journal. Le résultat doit afficher ces statistiques pour chaque fichier répertorié dans le journal.

Donc, ici, le type de statistiques est de nature dynamique. Le nom de la fonction stats sera passé en argument à la macro.

Définition de la macro

Ensuite, nous définissons la macro en définissant diverses propriétés comme indiqué dans l'écran ci-dessous. Le nom de la macro contient (1), indiquant qu'il y a un argument à passer dans la macro lorsqu'elle est utilisée dans la chaîne de recherche.fun est l'argument qui sera transmis à la macro lors de l'exécution dans la requête de recherche.

Utilisation de la macro

Pour utiliser la macro, nous en faisons une partie de la chaîne de recherche. En passant des valeurs différentes pour l'argument, nous voyons des résultats différents comme prévu.

Pensez à trouver la taille moyenne en octets des fichiers. Nous passons avg comme argument et obtenons le résultat comme indiqué ci-dessous. La macro a été conservée sous le signe `dans le cadre de la requête de recherche.

De même, si nous voulons la taille de fichier maximale pour chacun des fichiers présents dans le journal, nous utilisons maxcomme argument. Le résultat est comme indiqué ci-dessous.