Обновлена документация под новые аддоны (gitlab, redis, mongodb, kafka, kafka-ui, rabbitmq) и новую модель явного выбора зависимостей. Добавлены и унифицированы описания переключателей *_database_mode и *_redis_mode, обновлена таблица зависимостей аддонов, примеры конфигурации и список vault-секретов.
84 lines
2.4 KiB
Markdown
84 lines
2.4 KiB
Markdown
# Promtail
|
||
|
||
DaemonSet-агент сбора логов. Запускается на каждой ноде кластера, собирает логи всех подов и отправляет в Loki. Поддерживает pipeline stages для парсинга и обогащения логов.
|
||
|
||
## Быстрый старт
|
||
|
||
```yaml
|
||
# group_vars/all/addons.yml
|
||
addon_promtail: true
|
||
addon_loki: true # требуется Loki
|
||
```
|
||
|
||
```bash
|
||
make addon-promtail
|
||
```
|
||
|
||
## Параметры
|
||
|
||
| Переменная | Умолч. | Описание |
|
||
|---|---|---|
|
||
| `promtail_loki_url` | авто (loki namespace) | URL Loki push endpoint |
|
||
| `promtail_tenant_id` | `""` | Tenant ID (если Loki multi-tenant) |
|
||
|
||
## Внешний Loki
|
||
|
||
```yaml
|
||
promtail_loki_url: "http://external-loki.example.com:3100/loki/api/v1/push"
|
||
```
|
||
|
||
## Автоматические labels
|
||
|
||
Promtail автоматически добавляет labels из метаданных пода:
|
||
- `namespace` — namespace пода
|
||
- `pod` — имя пода
|
||
- `container` — имя контейнера
|
||
- `node_name` — имя ноды
|
||
- `app` — label app пода
|
||
|
||
## Pipeline stages — обработка логов
|
||
|
||
Promtail поддерживает pipeline stages для парсинга:
|
||
|
||
**JSON логи:**
|
||
```yaml
|
||
pipelineStages:
|
||
- json:
|
||
expressions:
|
||
level: level
|
||
msg: message
|
||
- labels:
|
||
level:
|
||
```
|
||
|
||
**Regex парсинг:**
|
||
```yaml
|
||
pipelineStages:
|
||
- regex:
|
||
expression: '(?P<level>INFO|WARN|ERROR|DEBUG)'
|
||
- labels:
|
||
level:
|
||
```
|
||
|
||
**Мультилайн (stack traces):**
|
||
```yaml
|
||
pipelineStages:
|
||
- multiline:
|
||
firstline: '^\d{4}-\d{2}-\d{2}'
|
||
max_wait_time: 3s
|
||
```
|
||
|
||
## Проверка что Promtail работает
|
||
|
||
```bash
|
||
kubectl logs -n promtail daemonset/promtail -f | grep "error\|warn"
|
||
kubectl get pods -n promtail -o wide
|
||
```
|
||
|
||
В Grafana → Explore → Loki → выбери namespace → должны появиться логи.
|
||
## Официальные ресурсы
|
||
|
||
- Официальный сайт: [https://grafana.com/docs/loki/latest/send-data/promtail/](https://grafana.com/docs/loki/latest/send-data/promtail/)
|
||
- Официальная документация: [https://grafana.com/docs/loki/latest/send-data/promtail/](https://grafana.com/docs/loki/latest/send-data/promtail/)
|
||
- Версии Helm chart / ПО: [https://artifacthub.io/packages/helm/grafana/promtail](https://artifacthub.io/packages/helm/grafana/promtail)
|