Promtail + Loki + Grafana实现日志管理系统

本文介绍了轻量级日志监控系统的两种选择:EFK(Elasticsearch、Logstash、Kibana)和PLG(Promtail、Loki、Grafana)。相较于EFK的复杂性,PLG更加轻量且易于配置。Loki受到Prometheus启发,用于日志聚合,Promtail负责日志收集,Grafana提供可视化界面。通过示例展示了如何使用docker-compose搭建PLG系统,包括各组件配置及客户端Promtail的配置和启动。此外,还提到了日志查询表达式和过滤器的使用,以及遇到日志量过大导致的429错误及其解决办法。

参考文献https://blog.csdn.net/weixin_52270081/article/details/124801308

介绍

日志监控告警系统,较为主流的是ELK(Elasticsearch 、 Logstash和Kibana核心套件构成),虽然优点是功能丰富,允许复杂的操作。但是,这些方案往往规模复杂,资源占用高,操作苦难。很多功能往往用不上,大多数查询只关注一定时间范围和一些简单的参数(如host、service等),使用这些解决方案就有点杀鸡用牛刀的感觉了。

所以寻找更轻量级的日志监控系统,所以也就有了EFK(elasticsearch+kibana+filebeat),
搭建参考:EFK轻量级日志系统搭建

另外一种是Promtail + Loki + Grafana核心组件构成,简称PLG,这种是更轻量级的,配置要求也不高,功能简单,但是目的明确,就是日志采集。

Loki的架构也非常简单,使用了和prometheus一样的标签来作为索引,Loki 是受Prometheus启发的水平可扩展、高可用、多租户日志聚合系统。

组件:

promtail: 日志收集的代理,安装部署在需要收集和分析日志的服务器,promtail会将日志发给Loki服务。

Loki: 主服务器,负责存储日志和处理查询。

Grafana:提供web管理界面,数据展示功能。

docker-compose基础文件

version: "3"

networks:
  loki:

services:
  loki:
    image: grafana/loki:2.5.0
    ports:
      - "3100:3100"
    command: -config.file=/etc/loki/local-config.yaml
    networks:
      - loki

  promtail:
    image: grafana/promtail:2.5.0
    volumes:
      - /var/log:/var/log
    command: -config.file=/etc/promtail/config.yml
    networks:
      - loki

  grafana:
    image: grafana/grafana:latest
    ports:
      - "3000:3000"
    networks:
      - loki

执行:docker-compose up --build
目的是尝试运行,确保能够正常拉取镜像,并通过运行好的容器,获取相关的配置文件

通过 :
docker cp eb5c3c8c3f5b:/var/lib/grafana/grafana.db /home/Promtail_Loki_Grafana/
docker cp 容器ID:/容器内路径/** /宿主机路径/**
复制容器内文件到宿主机中自定义的目录中(参考以下配置)

docker-compose正式文件

version: "3"
  
net
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值