Содержание

Promtail

Отладка агеннта

promtail-windows-amd64 –dry-run –inspect –config.file=promtail-local-config.yaml

Конфигурации парсинга scrape_configs:

В разделе scrape_config указывается набор целей и параметров, описывающих, как их парсить. В общем случае одна конфигурация парсинга соответствует одному заданию. В расширенных конфигурациях это может измениться.

Цели могут быть заданы статически с помощью параметра static_configs или обнаружены динамически с помощью одного из поддерживаемых механизмов обнаружения сервисов. Кроме того, relabel_configs позволяет вносить дополнительные изменения в любую цель и её метки перед парсингом.

Конфигурация static_configs

Пример: job logs метка для имени конфигурации (конфигураций может быть несколько)

scrape_configs:
- job_name: system
  static_configs:
  - targets:
      - localhost
    labels:
      job: logs
      __path__: \var\log\*.log

Если включена ротация логов, то в лог попадут как дневные логи, так и ротационные

Конфигурация docker_sd_config

scrape_configs:
  - job_name: docker_containers
    docker_sd_configs:
      - host: unix:///var/run/docker.sock
        refresh_interval: 60s
        filters:
          - name: status
            values: ["running"]
    relabel_configs:
      - target_label: job
        replacement: docker_containers

Доступные мета-метки relabel_configs:

Эти метки можно использовать при переименовании.

__meta_docker_container_id: идентификатор контейнера
__meta_docker_container_name: имя контейнера
__meta_docker_container_network_mode: сетевой режим контейнера
__meta_docker_container_label_<labelname>: каждая метка контейнера
__meta_docker_container_log_stream: тип потока журнала stdout или stderr
__meta_docker_network_id: идентификатор сети
__meta_docker_network_name: имя сети
__meta_docker_network_ingress: является ли сеть входящей
__meta_docker_network_internal: является ли сеть внутренней
__meta_docker_network_label_<labelname>: каждая метка сети
__meta_docker_network_scope: область действия сети
__meta_docker_network_ip: IP-адрес контейнера в этой сети
__meta_docker_port_private: порт контейнера
__meta_docker_port_public: внешний порт, если существует сопоставление портов
__meta_docker_port_public_ip: публичный IP-адрес, если существует сопоставление портов