[CENTOS] PROMTAIL - fourslickz/notes GitHub Wiki

setup promtail

mkdir -p /opt/promtail
cd /opt/promtail/
wget https://github.com/grafana/loki/releases/download/v3.3.2/promtail-linux-amd64.zip
unzip promtail-linux-amd64.zip
mv promtail-linux-amd64 promtail
mkdir /var/lib/promtail

create promtail config

nano /opt/promtail/config.yml

---
server:
  http_listen_address: 127.0.0.1
  http_listen_port: 9080

positions:
  filename: /var/lib/promtail/positions.yaml

clients:
  - url: http://152.42.235.60:3100/loki/api/v1/push

scrape_configs:
  - job_name: passport-prod
    static_configs:
      - targets:
          - localhost
        labels:
          job: passport-prod
          app: laravel
          env: prod
          namespace: be
          container_name: passport-prod
          framework: laravel
          log_type: application
          __path__: /var/www/html/live/passport/storage/logs/laravel-*.log

  - job_name: integrasi-prod
    static_configs:
      - targets:
          - localhost
        labels:
          job: integrasi-prod
          app: laravel
          env: prod
          namespace: be
          container_name: integrasi-prod
          framework: laravel
          log_type: application
          __path__: /var/www/html/live/integrasi/storage/logs/laravel-*.log

      - targets:
          - localhost
        labels:
          job: integrasi-prod
          app: laravel
          env: prod
          namespace: be
          container_name: integrasi-prod
          framework: laravel
          log_type: endpoint
          __path__: /var/www/html/live/integrasi/storage/logs/endpoint-*.log

  - job_name: produksi-prod
    static_configs:
      - targets:
          - localhost
        labels:
          job: produksi-prod
          app: laravel
          env: prod
          namespace: be
          container_name: produksi-prod
          framework: laravel
          log_type: application
          __path__: /var/www/html/live/produksi/storage/logs/laravel-*.log

      - targets:
          - localhost
        labels:
          job: produksi-prod
          app: laravel
          env: prod
          namespace: be
          container_name: produksi-prod
          framework: laravel
          log_type: endpoint
          __path__: /var/www/html/live/produksi/storage/logs/endpoint-*.log

./promtail-linux-amd64 --config.file config.yml

create promtail service

nano /etc/systemd/system/promtail.service

[Unit]
Description=Grafana Promtail
After=network.target

[Service]
ExecStart=/opt/promtail/promtail -config.file /opt/promtail/config.yml
Restart=always
User=root

[Install]
WantedBy=multi-user.target

systemctl enable promtail
systemctl start promtail
systemctl status promtail