📨
Grafana Cloud (Loki) に Promtail を使って journal メッセージを飛ばしてみた
Grafana + Loki + Promtailでログの可視化 を参考にしながら、インストールしてみた。
全体のイメージ
Ubuntu 22.04 のマシン上に Promtail を導入して、Grafana Cloud (Loki)にログメッセージを送信するように構成する。
Promtail のバイナリーを持ってくる
/opt/promtail ディレクトリ配下に bin と conf を配置する。
$ wget https://github.com/grafana/loki/releases/download/v2.6.1/promtail-linux-amd64.zip
$ unzip promtail-linux-amd64.zip
$ sudo mkdir -p /opt/promtail/{bin,conf}
$ sudo cp ./promtail-linux-amd64 /opt/promtail/bin/promtail
Promtail のコンフィグファイルを作成する
$ sudo vim /opt/promtail/conf/config.yaml
ファイルの中身は以下の通り。
今回は Grafana Cloud の Loki に合わせて client の url を設定している。
(※ TOKEN はダッシュボード上で生成した文字列に置き換える)
/opt/promtail/conf/config.yaml
server:
http_listen_port: 0
grpc_listen_port: 0
positions:
filename: /tmp/positions.yaml
client:
url: https://318839:!!YOUR TOKEN STRING!!@logs-prod3.grafana.net/loki/api/v1/push
scrape_configs:
- job_name: journal
journal:
path: /var/log/journal
labels:
job: "journal"
relabel_configs:
- source_labels: [__journal_systemd_unit]
regex: ^session-\d+.scope$
action: drop
- source_labels: ['__journal__hostname']
target_label: 'host'
- source_labels: ['__journal__systemd_unit']
target_label: 'unit'
- job_name: syslog
syslog:
listen_address: 0.0.0.0:1514
idle_timeout: 60s
label_structured_data: yes
labels:
job: "syslog"
relabel_configs:
- source_labels: ['__syslog_message_hostname']
target_label: 'host'
Syslog メッセージの収集のために、rsyslog のコンフィグファイルを追加する
$ sudo vim /etc/rsyslog.d/10-promtail.conf
/etc/rsyslog.d/10-promtail.conf
*.* @@(o)127.0.0.1:1514;RSYSLOG_SyslogProtocol23Format
$ sudo systemctl restart rsyslog
Promtail のサービス自動起動のために、Systemd の Unit ファイルを置く
$ sudo vim /etc/systemd/system/promtail.service
/etc/systemd/system/promtail.service
[Unit]
Description=Promtail Agent
[Service]
ExecStart=/opt/promtail/bin/promtail -config.file=/opt/promtail/conf/config.yaml
[Install]
WantedBy=multi-user.target
起動して動作確認をする
$ sudo systemctl daemon-reload
$ sudo systemctl enable --now promtail
$ sudo systemctl status promtail
Grafana Cloud 上で収集されたログメッセージを見てみる
その後ダッシュボードを工夫しまくって動かしてみた動画がこちら。
Discussion