Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| sysadmin:linux:logs:promtail [2021/10/25 14:55] – créée yoann | sysadmin:linux:logs:promtail [2022/12/08 22:02] (Version actuelle) – yoann | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag> | + | {{tag> |
| ====== Promtail ====== | ====== Promtail ====== | ||
| + | |||
| + | **Promtail** est un agent. Il scrute les fichiers de logs et communique les changements à la base **Loki**. | ||
| + | |||
| + | ===== Installation via Docker ===== | ||
| Télécharger l' | Télécharger l' | ||
| Ligne 9: | Ligne 13: | ||
| </ | </ | ||
| + | |||
| + | Fichier de configuration | ||
| + | <file yaml promtail-config.yaml> | ||
| + | server: | ||
| + | http_listen_port: | ||
| + | grpc_listen_port: | ||
| + | |||
| + | positions: | ||
| + | filename: / | ||
| + | |||
| + | clients: | ||
| + | - url: http:// | ||
| + | |||
| + | scrape_configs: | ||
| + | - job_name: system | ||
| + | static_configs: | ||
| + | - targets: | ||
| + | - localhost | ||
| + | labels: | ||
| + | job: varlogs | ||
| + | __path__: / | ||
| + | </ | ||
| + | |||
| + | Depuis les versions 1.6 les images sont configurées pour s' | ||
| + | |||
| + | |||
| + | <code bash> | ||
| + | docker run -v $(pwd):/ | ||
| + | </ | ||
| + | |||
| + | ===== Pipeline ===== | ||
| + | |||
| + | Le pipeline est le processus permettant de transformer les données entrantes dans promtail avant leur injection dans Loki. Le pipeline peut agir sur l' | ||
| + | |||
| + | * Les **analyses** (parsing stages) chargées d' | ||
| + | * Les transformations (transform stages) modifient les données extraites précédemment. | ||
| + | * Les **actions** (action stages) peuvent comprendre: | ||
| + | * Ajouter/ | ||
| + | * Modifier le timestamp; | ||
| + | * Modifier le contenu de la ligne de log; | ||
| + | * Créer une métrique basée sur les données extraites. | ||
| + | * Les **filtres** (filtering stages) pour appliquer un sous ensembles d' | ||
| + | |||
| + | D' | ||
| + | |||
| + | ==== Exemple ==== | ||
| + | |||
| + | On souhaite utiliser promtail pour injecter le journal d' | ||
| + | < | ||
| + | Jan 22 18:56:24 localhost kernel: [29221.074606] [UFW BLOCK] IN= OUT=veth4db71c3 SRC=fe80: | ||
| + | Jan 22 19:23:11 localhost kernel: [30828.656403] [UFW ALLOW] IN= OUT=br_webmon SRC=192.168.101.1 DST=192.168.101.7 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=63526 DF PROTO=TCP SPT=35150 DPT=443 WINDOW=64240 RES=0x00 SYN URGP=0 | ||
| + | |||
| + | </ | ||
| + | |||
| + | On cherche ici à produire un label du type action=" | ||
| + | |||
| + | |||
| + | ==== Troubleshooting ==== | ||
| + | |||
| + | Après modification du fichier de configuration pour ajouter un pipeline, le redémarrage du service promtail échoue, le message d' | ||
| + | < | ||
| + | romtail_1 | ||
| + | </ | ||
| + | |||
| + | <note warning> | ||
| + | Attention à l' | ||
| + | </ | ||
| ===== Références ===== | ===== Références ===== | ||
| Ligne 14: | Ligne 85: | ||
| * https:// | * https:// | ||
| * https:// | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||