Promtail 对接日志最佳实践

Promtail 介绍

Promtail 是由 Grafana Labs 开发的日志收集代理,主要用于从本地系统或容器中采集日志,并将其发送到 Loki 或兼容 Loki 协议的系统,本次为对接到观测云。

观测云

观测云是一款专为 IT 工程师打造的全链路可观测产品,它集成了基础设施监控、应用程序性能监控和日志管理,为整个技术栈提供实时可观察性。这款产品能够帮助工程师全面了解端到端的用户体验追踪,了解应用内函数的每一次调用,以及全面监控云时代的基础设施。此外,观测云还具备快速发现系统安全风险的能力,为数字化时代提供安全保障。

实验环境

部署 DataKit

DataKit 是一个开源的、跨平台的数据收集和监控工具,由观测云开发并维护。它旨在帮助用户收集、处理和分析各种数据源,如日志、指标和事件,以便进行有效的监控和故障排查。DataKit 支持多种数据输入和输出格式,可以轻松集成到现有的监控系统中。

登录观测云控制台,在「集成」 - 「DataKit」选择对应安装方式,当前采用 Linux 主机部署 DataKit。

开启 Promtail 采集器

进入 DataKit 安装目录下的 /usr/local/datakit/conf.d/log 目录,复制promtail.conf.sample 并命名为 promtail.conf。示例如下:

bash 复制代码
cp promtail.conf.sample  promtail.conf

备注:

  • 对于 v0.3.0 及之前的版本需要配置 legacy = true,即使用 POST /api/prom/push,可以用 Legacy 版本 API 处理接收 Promtail 的日志数据。
  • 之后的版本使用默认配置,即 legacy = false,即使用 POST /loki/api/v1/push

实验环境部署

下载安装(本次验证仅为主机安装,也可 kubernetes 部署)

bash 复制代码
wget https://github.com/grafana/loki/releases/latest/download/promtail-linux-amd64.zip
unzip promtail-linux-amd64.zip
chmod +x promtail-linux-amd64
sudo mv promtail-linux-amd64 /usr/local/bin/promtail
#验证 Promtail 安装成功
promtail --version

配置 Promtail

bash 复制代码
vim /etc/promtail/promtail.yaml
yaml 复制代码
server:
  http_listen_port: 9080
  grpc_listen_port: 0

positions:
  filename: /tmp/positions.yaml

clients:
  - url: http://localhost:9529/v1/write/promtail?source=promtail

scrape_configs:
  - job_name: system
    static_configs:
      - targets:
          - localhost
        labels:
          job: varlogs
          __path__: /var/log/message

运行 Promtail

ini 复制代码
#前台测试
promtail -config.file=/etc/promtail/promtail.yaml
#后台测试
sudo tee /etc/systemd/system/promtail.service > /dev/null <<EOF
[Unit]
Description=Promtail Log Collector
After=network.target

[Service]
ExecStart=/usr/local/bin/promtail -config.file=/etc/promtail/promtail.yaml
Restart=always
RestartSec=5
User=root

[Install]
WantedBy=multi-user.target
EOF
#追加日志测试
echo "test log from promtail at $(date)" | sudo tee -a /var/log/message

验证

查看采集器状态

在观测云中查看日志功能 Promtail 数据源日志

总结

观测云通过对接 Promtail 后,无需额外适配即可协助用户使用 Promtail 将主机和容器日志实时推送到观测云;通过标签化管理和与指标、追踪数据的统一关联,帮助工程师迅速实现多维度分析、故障定位和业务洞察,有效降低了日志管理复杂度和运维成本,提升了全链路观测的效率与准确性。

相关推荐
lemoncat82 天前
免费开源!Windows笔记本电池管家
监控·笔记本·电池
cyber_两只龙宝3 天前
haproxy--实现能7层负载均衡、基于cookie会话保持、状态页监控的高性能web服务器集群
linux·运维·负载均衡·监控·haproxy·会话保持·高性能集群
程序员羽毛4 天前
🚀 股票量化多策略盯盘哨兵 V3.0.0 涨停板监控+回测+回放+摸鱼全搞定
股票量化·监控·提醒·股票策略
少云清4 天前
【软件测试】9_性能测试实战 _性能测试监控
性能测试·监控
A-刘晨阳4 天前
Prometheus + Grafana + Alertmanager 实现邮件监控告警及配置告警信息
运维·云计算·grafana·prometheus·监控·邮件
盛世宏博北京6 天前
《合规 GB/T 50356:小型档案馆(100㎡)恒温恒湿自动化方案》
监控·档案温湿度
OpsEye6 天前
监控 100 问(五):监控数据的分析与可视化
运维·网络·信息可视化·it·监控·监控系统
玄德公笔记6 天前
Prometheus监控k8s的metric详解(第二版)-01-scrape 指标抓取
kubernetes·k8s·prometheus·监控·metric·scrape·k8s监控
无线图像传输研究探索11 天前
硬盘录像机(NVR)+ 车载设备:车载图传监控解决方案,重塑移动监控新生态
车载系统·监控·无线图传·车载·车载监控·车载图传
A-刘晨阳13 天前
【Linux】Prometheus + Grafana的使用
linux·运维·grafana·prometheus·监控