grafana官方使用文档_使用 Loki 采集微服务日志

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了grafana官方使用文档_使用 Loki 采集微服务日志相关的知识,希望对你有一定的参考价值。

参考技术A helm快速生效方法
wget https://get.helm.sh/helm-v3.2.1-linux-amd64.tar.gz
tar -zxvf helm-v3.2.1-linux-amd64.tar.gz
cd linux-amd64/
cp helm /usr/local/bin
chmod a+x /usr/local/bin/helm

kubectl get pods -n loki

helm upgrade --install my-release --namespace=loki loki/grafana
安装完成后查看 Pod 的状态:
kubectl get pods -n loki

这里我们直接使用 port-forward 来访问 Grafana 服务:
kubectl --namespace loki port-forward $POD_NAME 3000

在在浏览器中打开网址 http://localhost:8080 即可访问,初次登录需要输入用户名和密码,用户名为 admin,对应的密码可以用下面的命令获取:

查看loki命名空间中的service
kubectl get svc -n loki

这里因为要让k8s集群外能访问到所以将ClusterIP 修改为NodePort类型,具体修改后内容如下
kubectl edit svc my-release-grafana -n loki

修改好以后保存即可。
生效之后就可以在192.168.100.203:30060访问grafana了。

登录完成后,我们就可以添加 Loki 作为数据源了,从左侧面板,选择配置 -> 数据源:

在数据源视图中,点击添加数据源,然后选择 Loki。

给数据源起一个名字,然后设置一个 Grafana 实例可以访问的 Loki URL。我们这里由于 Loki 和 Grafana 都在相同的命名空间中运行,不需要使用任何验证方案,因此不需要其他配置,单击 "保存和测试"。您应该会看到一条确认消息 Data source connected and labels found.。

http://loki.loki.svc.cluster.local:3100/

现在 Grafana 已经连接到 Loki 了,接下来我们可以查询部署到 demo 命名空间的示例应用的日志,我们可以查找错误,通过 trace id 查找事务等等。

在 Grafana 页面中,从侧面板中选择 "探索",选择上一步中添加的 Loki数据源,在查询框中,输入namespace="default",然后点击 "运行查询",正常我们就可以看到日志返回了。

此外我们还可以添加更多的过滤器和标签,来缩小我们想要查询的日志范围。要查看来自 default 命名空间的 shida-getaway 的日志,可以使用语句 namespace="default",container="shida-getaway" 进行查询,我们也可以查找那些非正常的状态码的 http 请求 namespace="default" |= "http.resp.status"!= "200"。

我们还可以对来自日志的数据进行一些聚合分析。比如这里面汇总过去5分钟内 default 命名空间的 http 状态码,查询语句为:sum(count_over_time(namespace="default" |= "http.resp.status" | json [5m])) by (http_resp_status)

上面的绿线代表 302 状态码,黄线代表 200 状态码,过去5分钟内没有其他状态码。关于 Loki 的查询语言 LogQL 还有很多高级的操作,我们可以通过官方文档查看更多。

此外查询历史记录还会被保存下来,这样我们就可以在将来重新访问一个查询历史了,查询检查器还可以报告有关查询执行的指标。

<main>

<article class="baidu_pl">

编写日志流选择器后,您可以通过编写搜索表达式来进一步过滤结果。搜索表达式可以只是文本或正则表达式。
查询示例:

过滤器运算符可以被链接,并将顺序过滤表达式-结果日志行将满足每个过滤器。例如:

已实现以下过滤器类型:

参考资料: https://blog.csdn.net/weixin_39765280/article/details/111248445

以上是关于grafana官方使用文档_使用 Loki 采集微服务日志的主要内容,如果未能解决你的问题,请参考以下文章

轻量级日志采集系统Loki+grafana搭建

使用 Grafana 和 Loki 删除重复条目

prometheus(或grafana)查询来评估grafana loki使用的存储?

如何在 Grafana 上使用 LogQL 将 Loki 解析的字段绘制为数值?

Grafana/Loki:如何在 LogQL 中使用多选模板变量?

Promtail + Loki + Grafana 日志监控系统搭建