专用车网站建设价格,手机优化设置,婚礼网站怎么做,建设门户公司网站loki介绍
Loki是 Grafana Labs 团队最新的开源项目#xff0c;是一个水平可扩展#xff0c;高可用性#xff0c;多租户的日志聚合系统。它的设计非常经济高效且易于操作#xff0c;因为它不会为日志内容编制索引#xff0c;而是为每个日志流编制一组标签。
不对日志进行…loki介绍
Loki是 Grafana Labs 团队最新的开源项目是一个水平可扩展高可用性多租户的日志聚合系统。它的设计非常经济高效且易于操作因为它不会为日志内容编制索引而是为每个日志流编制一组标签。
不对日志进行全文索引。Loki中存储的是压缩后的非结构化日志并且只对元数据建立索引因此Loki 具有操作简单、低成本的优势。使用与 Prometheus 相同的标签。Loki通过标签对日志进行索引和分组这使得日志的扩展和操作效率更高。特别适合储存 Kubernetes Pod 日志。诸如 Pod 标签之类的元数据会被自动删除和编入索引。Grafana 原生支持。
架构
Loki 日志系统由以下3个部分组成
loki是主服务器负责存储日志和处理查询。promtail是专为loki定制的代理负责收集日志并将其发送给 loki 。Grafana用于 UI展示。 Loki 日志系统由以下3个部分组成loki是主服务器负责存储日志和处理查询。promtail是专为loki定制的代理负责收集日志并将其发送给 loki 。Grafana用于 UI展示。
https://www.yuque.com/yuqueyonghukvyedl/eh0xog/tgdz0i
部署loki
wget https://raw.githubusercontent.com/grafana/loki/v2.3.0/cmd/loki/loki-local-config.yaml -O loki-config.yamldocker run -d -v $(pwd):/mnt/config -p 3100:3100 grafana/loki:latest -config.file/mnt/config/loki-config.yamlwget https://raw.githubusercontent.com/grafana/loki/v2.3.0/clients/cmd/promtail/promtail-docker-config.yaml -O promtail-config.yamldocker run -d -v $(pwd):/mnt/config -v /var/log:/var/log grafana/promtail:latest -config.file/mnt/config/promtail-config.yamldocker pull grafana/grafanadocker run -d -p 3000:3000 --namegrafana grafana/grafana
访问地址
http://10.6.8.227:3100/metricshttp://10.6.8.227:3000
默认账号和密码 adminLogQL 查询语句
Log Query Language(日志查询语言简称LogQL) 受 PromQL 启发可以看作是分布式的 grep 命令用来从汇总的日志源筛选日志。LogQL 通过 labels(标签) 和 operators(运算符) 进行过滤。
LogQL 查询有两种类型
Log Queries(日志查询) # 根据查询语句返回日志条目每行是一条日志。 a. 基本的日志查询由两部分组成 ⅰ. log stream selector # 日志流选择器 ⅱ. filter expression # 过滤表达式Metric Queries(指标查询) # 用于扩展日志查询并根据 Log Queries 中的日志计数计算值。通过这种查询语句可以计算将日志数据量化成指标信息并且Promtail 可以通过这种查询语句将指标信息填充到自己暴露的 Metrics 端点中。
注意由于 Loki 的设计所有 LogQL 查询都必须包含一个日志流选择器
日志流选择器确定将搜索多少日志流日志内容的唯一来源例如文件。然后更细粒度的日志流选择器将搜索到的流的数量减少到可管理的数量。这意味着传递给日志流选择器的标签将影响查询执行的相对性能。然后使用过滤器表达式对来自匹配日志流的聚合日志进行分布式grep。
Log Queries(日志查询) 基本的日志查询由两部分组成 ● Log Stream Selector(日志流选择器) ● Log Pipeline(日志管道)
注意由于 Loki 的设计原则所有的 LogQL 查询必须包含 Log Stream Selector(日志流选择器)
日志流选择器决定了有多少日志流将被搜索到一个更细粒度的日志流选择器将搜索到流的数量减少到一个可管理的数量。所以传递给日志流选择器的标签将影响查询执行的性能。 而日志流选择器后面的日志管道是可选的日志管道是一组阶段表达式它们被串联在一起应用于所过滤的日志流每个表达式都可以过滤、解析和改变日志行内容以及各自的标签。
1. | # 匹配包含指定字符串的日志行
2. ! # 匹配不包含指定字符串的日志行
3. |~ # 匹配包含正则表达式的日志行
4. !~ # 匹配不包含正则表达式的日志行{jobvarlogs} |ERROR !level |2021-08-23 参考文献
https://grafana.com/docs/loki/latest/logql/ip/