当前位置:首页 > 科技  > 软件

日志分析系统Loki使用指南&封面红包领取

来源: 责编: 时间:2024-02-04 17:20:54 282观看
导读与其他日志系统相比, Loki 的使用方式是有一定差异性的,需要用不同的思维方式。本文分享一下这些差异以及我们应该如何使用作为 Loki 用户或操作人员,我们目标应该是使用尽可能少的标签来存储日志。更少的标签则意味着更

与其他日志系统相比, Loki 的使用方式是有一定差异性的,需要用不同的思维方式。本文分享一下这些差异以及我们应该如何使用ktK28资讯网——每日最新资讯28at.com

作为 Loki 用户或操作人员,我们目标应该是使用尽可能少的标签来存储日志。ktK28资讯网——每日最新资讯28at.com

更少的标签则意味着更小的索引,从而能带来更好的性能。ktK28资讯网——每日最新资讯28at.com

ktK28资讯网——每日最新资讯28at.com

以上这些话听起来可能觉得有问题。因为在我们以往工作中比如使用 elk、数据库的经验告诉我们,如果想让它更快,需要对其建立索引。而Loki 是以完全相反的方式构建和优化的, Loki 的设计目标是保持较低的运营成本和复杂性,这是通过保持非常小的索引并利用商用硬件性能和并行化查询来实现的。ktK28资讯网——每日最新资讯28at.com

因此,作为 Loki 的用户或操作员,在添加标签之前我一定要三思而后行。ktK28资讯网——每日最新资讯28at.com

如何查询给定traceID 的所有日志?

ts=2020-08-25T16:55:42.986960888Z caller=spanlogger.go:53 org_id=29 traceID=2612c3ff044b7d02 method=Store.lookupIdsByMetricNameMatcher level=debug matcher="pod=/"loki-canary-25f2k/"" queries=16

我们可能会想,应该提取traceID作为标签,然后可以这样查询:ktK28资讯网——每日最新资讯28at.com

{cluster="ops-cluster-1",namespace="loki-dev", traceID=”2612c3ff044b7d02”}

但不建议这么做,这种方式会导致Loki 查询效率很低,因为它的值就是个无界的,每次请求都会产生新的traceID,这种情况属于典型无界的动态标签值,在Loki里面用Cardinality来表示,Cardinality值越高,Loki的查询效率越低。如果想在日志中查找高基数数据,请使用如下过滤表达式:ktK28资讯网——每日最新资讯28at.com

{cluster="ops-cluster-1",namespace="loki-dev"} |= “traceID=2612c3ff044b7d02”

提取的内容基数低,能否提取到标签中?

比如日志级别,只有几个固定值:ktK28资讯网——每日最新资讯28at.com

{cluster="ops-cluster-1",namespace="loki-dev", level=”debug”}

这里也要注意!因为标签对索引和存储具有倍增效应,刚开始的一个日志流,如果使用日志级别标签后,现在已变成4个日志流,所以在我们添加标签时要考虑这些,以下是一个示意图ktK28资讯网——每日最新资讯28at.com

ktK28资讯网——每日最新资讯28at.com

尽量使用静态标签

静态标签开销更小,在发送到Loki之前,就会获取相关 lablel,在k8s 中通过 helm 部署,默认采集以下静态标签ktK28资讯网——每日最新资讯28at.com

  • 应用名:__meta_kubernetes_pod_label_app
  • 命名空间:__meta_kubernetes_namespace
  • 节点名称:__meta_kubernetes_pod_node_name
  • pod名称:__meta_kubernetes_pod_name
  • 容器名称:__meta_kubernetes_pod_container_name

ktK28资讯网——每日最新资讯28at.com

使用并行化来提高Loki 性能

使用大量数值的标签是不好的,那么我们如何查询日志?如果没有日志没有索引,查询能快吗?ktK28资讯网——每日最新资讯28at.com

在我们使用ELK 或者其他日志系统时,我们会创建大量的索引来提高查询速度,但是在 loki 中我们需要忘记这些东西ktK28资讯网——每日最新资讯28at.com

因为loki 是通过并行化的方式来提交查询速度的。ktK28资讯网——每日最新资讯28at.com

ktK28资讯网——每日最新资讯28at.com

Loki 的超能力是将查询分解成小块,并将其并行调度,这样就可以在小时间内查询大量的日志数据,最后在进行汇总返回ktK28资讯网——每日最新资讯28at.com

总结

Loki 利用水平扩展和查询时间来查询我们的数据。这与使用多索引的解决方案一样快吗?可能不是!但它运行和部署要容易很多,而且还省资源。ktK28资讯网——每日最新资讯28at.com

Grafana Lab 的 Loki 部分集群的数据,在过去 7 天内,它摄入了 14TB 的数据。该时间段对应的索引使用量约为500MB;14TB 日志的索引可以放入树莓派的内存中。ktK28资讯网——每日最新资讯28at.com

这就是为什么Loki专注于保持标签集较小的原因。也许标签只能将搜索范围缩小到 100GB 的日志数据 —但是运行 20 个查询器(可以以 30GB/s 的速度并行搜索 100GB 数据)比维护一个 14TB 索引要便宜得多,尤其是当我们使用不了几次的时候。ktK28资讯网——每日最新资讯28at.com

因此,更少的标签 = 更好的性能。ktK28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-73319-0.html日志分析系统Loki使用指南&封面红包领取

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: React与Vue:事件委托的背后逻辑

下一篇: Python处理流式数据输出

标签:
  • 热门焦点
  • 俄罗斯:将审查iPhone等外国公司设备 保数据安全

    iPhone和特斯拉都属于在各自领域领头羊的品牌,推出的产品也也都是数一数二的,但对于一些国家而言,它们的产品可靠性和安全性还是在限制范围内。近日,俄罗斯联邦通信、信息技术
  • 5月安卓手机好评榜:魅族20 Pro夺冠

    性能榜和性价比榜之后,我们来看最后的安卓手机好评榜,数据来源安兔兔评测,收集时间2023年5月1日至5月31日,仅限国内市场。第一名:魅族20 Pro好评率:97.50%不得不感慨魅族老品牌还
  • 十个可以手动编写的 JavaScript 数组 API

    JavaScript 中有很多API,使用得当,会很方便,省力不少。 你知道它的原理吗? 今天这篇文章,我们将对它们进行一次小总结。现在开始吧。1.forEach()forEach()用于遍历数组接收一参
  • K8S | Service服务发现

    一、背景在微服务架构中,这里以开发环境「Dev」为基础来描述,在K8S集群中通常会开放:路由网关、注册中心、配置中心等相关服务,可以被集群外部访问;图片对于测试「Tes」环境或者
  • SpringBoot中使用Cache提升接口性能详解

    环境:springboot2.3.12.RELEASE + JSR107 + Ehcache + JPASpring 框架从 3.1 开始,对 Spring 应用程序提供了透明式添加缓存的支持。和事务支持一样,抽象缓存允许一致地使用各
  • 不容错过的MSBuild技巧,必备用法详解和实践指南

    一、MSBuild简介MSBuild是一种基于XML的构建引擎,用于在.NET Framework和.NET Core应用程序中自动化构建过程。它是Visual Studio的构建引擎,可在命令行或其他构建工具中使用
  • 每天一道面试题-CPU伪共享

    前言:了不起:又到了每天一到面试题的时候了!学弟,最近学习的怎么样啊 了不起学弟:最近学习的还不错,每天都在学习,每天都在进步! 了不起:那你最近学习的什么呢? 了不起学弟:最近在学习C
  • 2023年,我眼中的字节跳动

    此时此刻(2023年7月),字节跳动从未上市,也从未公布过任何官方的上市计划;但是这并不妨碍它成为中国最受关注的互联网公司之一。从2016-17年的抖音强势崛起,到2018年的“头腾
  • 华为Mate 60系列用上可变灵动岛:正式版体验将会更出色

    这段时间以来,关于华为新旗舰的爆料日渐密集。据此前多方爆料,今年华为将开始恢复一年双旗舰战略,除上半年推出的P60系列外,往年下半年的Mate系列也将
Top