Loki的原理及使用

为什么做监控
核心目标:保障站点可靠,从而保障业务稳定及保障业务迭代效率

什么决定了站点“可靠”:系统可用度

系统可用度取决于什么:多长时间坏一次;一旦坏了之后,多长时间可以恢复

监控,即是服务于“可观察性”

覆盖面:硬件/系统级监控、应用服务指标监控、程序运行日志监控、业务监控、链路监控

关于日志监控

核心目标:程序运行日志监控,关注程序运行状态

如何做:日志的采集 -> 转换 -> 存储 ->可视化

ELK Stack:

ELK系统通常包含较多需求场景:“日志”(程序的运行信息)的监控、接口调用的指标统计分析、离线数据保存、业务数据分析等
当数据量级上来,在每个需求场景下都很难达到满意

ELK系统的需求做分化,让各自的技术方案适配各自的场景需求

ES存储日志数据成本高:尽量避免使用昂贵的全文索引或列式存储引擎来存储大量低价值的日志信息通常情况下查看频率较低

ES集群部署、扩缩容的运维成本较高

日志告警功能不完善

Loki是什么

Loki一个可水平伸缩、高可用、支持多租户的日志聚合系统。

Loki的灵感来源于Prometheus,它的设计极具成本效益并且易于操作,可以认为是日志版的Prometheus。

Loki的特殊之处

Loki不会对日志数据建立全文索引,也不支持Multiline:

取而代之的是:对非结构化的日志数据进行压缩存储并且只对日志数据的metadata(包括:时间戳、 labels等)建立索引。
                         存储、查询成本较低

Loki可以跟Prometheus中的监控指标进行关联:Loki可以使用与Prometheus相同的label定义和设计。

Loki的查询语法LogQL简单:日志数据查询分析心智负担低,便于在此之上建立告警统计机制

Grafana原生支持Loki:Grafana中原生支持Loki作为数据源进行查询

Loki的功能组件

Promtail、Distributor、Ingester、Querier、Query Frontend、Overrides、TableManager、RuntimeConfig

Loki的功能组件的架构

Loki的功能组件-Promtail

日志数据:采集、提取、匹配、过滤、打Labels、批量Push To Loki

支持的采集方式:File Traget、Journal Traget、Syslog Traget、Stdin Traget

Loki的功能组件-Promtail-处理流程

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值