本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
连接到 Loki 数据源
Loki 数据源提供对 Grafana 日志聚合系统 Loki 的访问权限。
添加数据源
-
打开 Grafana 工作区并确保您已登录。
-
在 “配置” 链接下的侧面菜单中,您应该找到 “数据源” 链接。
-
选择顶部的添加数据源按钮。
-
从数据源列表中选择 Loki。
注意
如果您在侧面菜单中看不到数据源链接,则表示您当前的用户没有该Admin
角色。
名称 | 描述 |
---|---|
Name
|
数据源名称。这就是您在面板、查询和 “浏览” 中查看数据源的方式。 |
Default
|
默认数据源意味着将为新面板预先选择该数据源。 |
URL
|
Loki 实例的网址;例如,http://localhost:3100 这可能是 Amazon EC2 主机的网址,也可能是 Amazon EKS 集群前面的应用程序负载均衡器或 Loki 实例的任何其他 URL。 |
Maximum lines
|
Loki 返回的日志行数上限(默认为 1000)。如果您的浏览器在 Explore 中显示日志时运行缓慢,请减小。 |
派生字段
您可以使用派生字段配置来执行以下操作:
-
添加从日志消息中解析的字段。
-
添加使用该字段值的链接。
您可以使用此功能直接从日志链接到跟踪后端,或者如果日志行中存在用户 ID,则链接到用户个人资料页面。这些链接出现在日志详细信息中。有关更多信息,请参阅 标签和检测到的字段。
每个派生字段由以下内容组成:
-
名称-以标签的形式显示在日志详细信息中。
-
Regex — 一种在日志消息上运行的正则表达式模式,并捕获其中的一部分作为新字段的值。只能包含一个捕获组。
-
URL/Query-如果链接是外部链接,则输入完整链接 URL。如果链接是内部链接,则此输入将用作对目标数据源的查询。在这两种情况下,您都可以使用宏对字段中的值进行
${__value.raw }
插值。 -
内部链接-选择链接是内部链接还是外部链接。对于内部链接,数据源选择器允许您选择目标数据源。仅支持跟踪数据源。
您可以使用调试部分来查看字段提取的内容以及 URL 的插值方式。选择 “显示示例日志消息” 以显示可在其中输入日志消息的文本区域。
带有链接的新字段显示在日志详细信息中。
查询 日志
可通过 “浏览” 和 “可视化” 中的日志面板查询和显示来自 Loki 的日志数据。选择 Loki 数据源,然后输入 LogQL 查询以显示您的日志。有关 LogQL 的更多信息,请参阅 Lo g
记录查询
日志查询由两部分组成:日志流选择器和搜索表达式。出于性能考虑,您必须首先为日志流选择日志标签。
查询字段旁边的日志资源管理器(“日志标签” 按钮)显示可用日志流的标签列表。另一种编写查询的方法是使用查询字段的自动完成功能。您首先键入左大括号{
,自动完成菜单将建议一个标签列表。按 Enter 键运行查询。
返回结果后,日志面板将显示日志行列表和条形图,其中 x 轴显示时间,y 轴显示频率/计数。
日志流选择器
对于查询表达式的标签部分,将其用大括号包起来,{}
然后使用键值语法来选择标签。多个标签表达式用逗号分隔:
{app="mysql",name="mysql-backup"}
目前支持以下标签匹配运算符:
-
=
完全相等。 -
!=
不相等。 -
=~
正则表达式匹配。 -
!~
不要进行正则表达式匹配。
示例:
-
{name=~"mysql.+"}
-
{name!~"mysql.+"}
添加标签选择器的另一种方法是在表格部分。选择标签旁边的 “筛选”,将标签添加到查询表达式中。这甚至适用于多个查询,并将标签选择器添加到每个查询中。
搜索表达式
编写日志流选择器后,您可以通过编写搜索表达式来进一步筛选结果。搜索表达式可以只是文本或正则表达式。
查询示例:
-
{job="mysql"} |= "error"
-
{name="kafka"} |~ "tsdb-ops.*io:2003"
-
{instance=~"kafka-[23]",name="kafka"} != "kafka.server:type=ReplicaManager"
过滤器运算符可以链接起来,并将按顺序向下过滤表达式。生成的日志行将满足所有筛选条件。
示例
{job="mysql"} |= "error" !=
"timeout"
目前支持以下过滤器类型:
-
|=
行包含字符串。 -
!=
line 不包含字符串。 -
|~
line 匹配正则表达式。 -
!~
line 与正则表达式不匹配。
注意
有关 Loki 的查询语言 LogQL 的更多信息,请参阅 Loki Lo
日志上下文
使用上面详述的搜索表达式时,您现在可以检索筛选结果周围的上下文。通过在筛选的行上选择Show Context
链接,您将能够调查您感兴趣的日志消息之前和之后的日志消息。
模板化
无需在指标查询中对服务器、应用程序和传感器名称等内容进行硬编码,而是可以使用变量来代替它们。变量显示为仪表板顶部的下拉选择框。您可以使用这些下拉框来更改控制面板中显示的数据。
有关模板和模板变量的更多信息,请参阅模板和变量。
注释
您可以使用任何非指标 Loki 查询作为注释来源。日志内容将用作注释文本,您的日志流标签将用作标签,因此无需进行其他映射。