Vous pouvez fournir les informations qu'un agent envoie à une destination avec l'option de filtre dans la section [server|<dest_id>] du fichier local liagent.ini.

L'option est au format suivant :

filter = {collector_type; collector_filter; event_filter}
Type de filtre Description
collector_type Liste séparée par des virgules qui définit les types de collecteur. Les valeurs prises en charge sont filelog ou winlog. Si aucune valeur n'est fournie, tous les types de collecteurs sont utilisés.
collector_filter Spécifie le nom d'une section de collecteur au format regex. Par exemple, vcops_.* fait référence à toutes les sections de collecteur qui commencent par « vcops_ ».
event_filter Les filtres des champs d'événements de journaux utilisent la même syntaxe que les listes autorisées ou bloquées dans les sections de collecteur. Un agent n'envoie que les événements de journaux avec l'expression True ou une valeur non nulle. Un event_filter vide a toujours la valeur True. Pour utiliser event_filter sur des événements de journaux, vous devez définir un analyseur dans les sections de collecteur appropriées pour l'extraction de champs. Si une expression ne peut pas être évaluée en raison de l'absence de champs dans l'événement de journal collecté, celui-ci est annulé.

Vous pouvez spécifier plusieurs expressions de filtre en les séparant par une virgule, comme indiqué dans l'exemple suivant :

filter= 
{winlog;Micr.*;},{filelog;apache-access;level=="error"}

Si un message répond à plusieurs critères de filtre pour une cible de destination, il n'est envoyé qu'une seule fois.

Tableau 1. Exemples de syntaxe
Filtre Signification

filter= {winlog;Microsoft.*;}

Envoie des événements de journaux à partir de collecteurs winlog uniquement si le nom de l'événement commence par « Microsoft ».

filter= {winlog;Microsoft.*; eventid == 1023}

Envoie des événements de journaux à partir de collecteurs winlog uniquement si le nom de l'événement commence par « Microsoft » et si l'ID d'événement est égal à 1023.

filter= {;.*;}

Valeur de filtre par défaut. Envoie tous les événements de journaux de toutes les sources.
filter= {winlog;.*;} Envoie tous les événements de journaux depuis des sections winlog.
filter= {filelog;syslog;facility<5} Envoie des événements de journaux à partir de la section [filelog|syslog] si le nombre d'installations est inférieur à 5. Les sections [filelog|syslog] doivent disposer d'un analyseur qui extrait le champ d'installation. Sinon, tous les événements sont ignorés.
filter= {;;} Ne correspond à aucun événement de journal. Utilisez cette syntaxe pour désactiver le transfert de journaux.

L'exemple suivant ajoute un filtre à la configuration de la deuxième destination de l'exemple précédent.

 

; The second destination receives just syslog events through the plain syslog protocol.
[server|syslog-audit]
hostname=third_party_audit_management.eng.vmware.com
proto=syslog
ssl=no
filter= {filelog; syslog; }

L'exemple suivant utilise une expression de filtre plus complexe.

; This destination receives vRealize Operations events if they have the level field equal
;to "error" or "warning" and they are collected by sections whose name begins with "vrops-"

[server|licf-prod1]
hostname=vrops-errors.licf.vmware.com
filter= {; vrops-.*; level == "error" || level == "warning"}

Vous pouvez spécifier plusieurs expressions de filtre en les séparant par une virgule, comme indiqué dans l'exemple suivant.

filter= e.
{winlog;Micr.*;},{filelog;apache-access;level=="error"}