Le format LTSV (Labeled Tab-Separated Values) est une variante du format TSV (Tab-Separated Values).

Dans un fichier LTSV, chaque enregistrement est représenté par une ligne unique. Chaque champ est séparé par <TAB> et contient un libellé et une valeur. Le libellé et la valeur sont séparés par :. Avec le format LTSV, vous pouvez analyser chaque ligne en la fractionnant avec <TAB> (comme pour le format TSV) et étendre n'importe quel champ avec des libellés uniques dans l'ordre que vous voulez. Pour plus d'informations sur le format LTSV, consultez http://ltsv.org/.

Configuration de l'analyseur LTSV

L'analyseur LTSV ne requiert pas d'options de configuration spécifiques. Pour l'utiliser, spécifiez le nom de l'analyseur ltsv intégré dans la configuration.
[parser|myltsv]
base_parser=ltsv
Le fichier LTSV doit être une séquence d'octets correspondant à la production LTSV au format ABNF.
ltsv = *(record NL) [record]
record = [field *(TAB field)]
field = label ":" field-value
label = 1*lbyte
field-value = *fbyte

TAB = %x09
NL = [%x0D] %x0A
lbyte = %x30-39 / %x41-5A / %x61-7A / "_" / "." / "-" ;; [0-9A-Za-z_.-]
fbyte = %x01-08 / %x0B / %x0C / %x0E-FF
host:127.0.0.1<TAB>ident:-<TAB>user:frank<TAB>time:[10/Oct/2000:13:55:36 -0700]<TAB>req:GET /apache_pb.gif HTTP/1.0<TAB>status:200<TAB>size:2326<TAB>referer:http://www.example.com/start.html<TAB>ua:Mozilla/4.08 [en] (Win98; I ;Nav)
Avec l'exemple de configuration LTSV, l'analyse du journal doit renvoyer les champs suivants :
host=127.0.0.1
ident=-
user=frank
time=[10/Oct/2000:13:55:36 -0700]
req=GET /apache_pb.gif HTTP/1.0
status=200
size=2326
referer=http://www.example.com/start.html
ua=Mozilla/4.08 [en] (Win98; I ;Nav)

Configuration de débogage

Un débogage supplémentaire est également disponible pour l'analyseur LTSV. Le débogage LTSV est désactivé par défaut. Pour l'activer, entrez debug=yes.

[parser|myltsv]
base_parser=ltsv
debug=yes

Lorsque le débogage est activé, l'analyseur LTSV extrait les valeurs de tous les libellés valides du journal. Avec l'analyseur LTSV, les noms de libellés doivent comporter uniquement des caractères alphanumériques, le trait de soulignement ("_"), le point (".") et le tiret ("-"). Si le journal contient au moins un nom de libellé non valide, son analyse échoue. Même si le nom du libellé est valide, l'agent contrôle le nom du champ. S'il existe des noms non valides, le nom du libellé doit être corrigé en nom de champ valide.

Configuration de l'analyseur LTSV de la section filelog

Vous pouvez aussi configurer directement l'analyseur LTSV de la section filelog.

[filelog|simple_logs]
directory=/var/log
include=*
parser=ltsv