当前位置: 首页 > news >正文

四、日志收集loki+ promtail+grafana

一、简介

Loki是受Prometheus启发由Grafana Labs团队开源的水平可扩展,高度可用的多租户日志聚合系统。 开发语言: Google Go。它的设计具有很高的成本效益,并且易于操作。使用标签来作为索引,而不是对全文进行检索,也就是说,你通过这些标签既可以查询日志的内容也可以查询到监控的数据签,极大地降低了日志索引的存储。系统架构十分简单,由以下3个部分组成 :

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

promtail 是代理,负责收集日志并将其发送给 loki ;

Grafana 用于 UI 展示;

只要在应用程序服务器上安装promtail来收集日志然后发送给Loki存储,就可以在Grafana UI界面通过添加Loki为数据源进行日志查询(如果Loki服务器性能不够,可以部署多个Loki进行存储及查询)。作为一个日志系统不光只有查询分析日志的能力,还能对日志进行监控和报警。

promtail收集并将日志发送给loki的 Distributor 组件 Distributor会对接收到的日志流进行正确性校验,并将验证后的日志分批并行发送到Ingester Ingester 接受日志流并构建数据块,压缩后存放到所连接的存储后端 Querier 收到HTTP查询请求,并将请求发送至Ingester 用以获取内存数据 ,Ingester 收到请求后返回符合条件的数据 ; 如果 Ingester 没有返回数据,Querier 会从后端存储加载数据并遍历去重执行查询 ,通过HTTP返回查询结果

二、下载安装
1.下载
https://github.com/grafana/loki/releases
loki-linux-amd64.zip
promtail-linux-amd64.zip
2.创建目录并解压
mkdir loki
cd loki
mkdir chunks
mkdir index
unzip loki-linux-amd64.zip
3.创建配置文件vim config.yaml
# This is a complete configuration to deploy Loki backed by the filesystem.
# The index will be shipped to the storage via tsdb-shipper.auth_enabled: falseserver:http_listen_port: 3100common:ring:instance_addr: 172.17.0.122kvstore:store: inmemoryreplication_factor: 1path_prefix: /data/prometheus/lokischema_config:configs:- from: 2024-07-10store: tsdbobject_store: filesystemschema: v13index:prefix: index_period: 24hstorage_config:filesystem:directory: /data/prometheus/loki/chunks
4.启动Loki:
nohup loki-linux-amd64 -config.file=config.yaml >loki.log 2>&1 &
5.应用服务器安装promtail
mkdir promtail
unzip promtail-linux-amd64.zip
6.创建配置文件vim promtail.yaml
server:http_listen_port: 9080grpc_listen_port: 0positions:filename: ./positions.yamlclients:- url: http://172.17.0.122:3100/loki/api/v1/pushscrape_configs:- job_name: ehrstatic_configs:- targets:- 172.17.0.112- labels:job: ehrhost: 172.17.0.112__path__: /data/ehr/output.log #应用服务日志
7.启动promtail
nohup ./promtail-linux-amd64 -config.file=./promtail.yaml > ./promtail.log 2>&1 &
8.grafana操作
连接-》数据源-》添加新数据源-》选择loki-》填写loki地址并保存-》数据源列表loki点击Explore-》label fiters下选择job以及promtail中的job_name-》右上角运行查询

之后可导入仪表板进行查看

http://www.lryc.cn/news/414928.html

相关文章:

  • xdma的linux驱动编译给arm使用(中断检测-测试程序)
  • 探索之路——初识 Vue Router:构建单页面应用的完整指南
  • 传输层_计算机网络
  • 自动驾驶的六个级别是什么?
  • 深度学习复盘与论文复现F
  • 如何学习自动化测试工具!
  • 短信接口被恶意盗刷
  • 实验4-2-1 求e的近似值
  • 内网穿透--LCX+portmap转发实验
  • 缓存一致性问题
  • 【MYSQL】MYSQL逻辑架构
  • 【Python】数据类型之字符串
  • c++编写java模式的线程类
  • vcpkg install libtorch[cuda] -allow-unsupported-compiler
  • Flink的DateStream API中的ProcessWindowFunction和AllWindowFunction两种用于窗口处理的函数接口的区别
  • MATLAB中dmperm函数用法
  • 苹果折叠屏设备:创新设计与技术突破
  • C#加班统计次数
  • 【资治通鉴】“ 将欲取之、必先予之 “ 策略 ① ( 魏桓子 割让土地 | 资治通鉴原文分析 | 道德经、周书、吕氏春秋、六韬 中的相似策略 )
  • Spring5 的日志学习
  • python爬虫实践
  • 【前端面试】七、算法-数组展平
  • Laravel php框架与Yii php 框架的优缺点
  • 使用 addRouteMiddleware 动态添加中间
  • Zookeeper未授权访问漏洞
  • 【JavaEE】定时器
  • 2024带你轻松玩转Parallels Desktop19虚拟机!让你在Mac电脑上运行Windows系统
  • 【算法】递归实现二分查找(优化)以及非递归实现二分查找
  • CDN 是什么?
  • 索引:SpringCloudAlibaba分布式组件全部框架笔记