在《Grafana》中使用洛基
Grafana附带了对Loki的内置支持,Loki是由Grafana Labs开发的开源日志聚合系统。bob电竞频道本主题解释特定于此数据源的选项、变量、查询和其他选项。
将其添加为数据源,就可以构建仪表板或在其中查询日志数据了探索.指添加数据源获取如何向Grafana添加数据源的说明。只有具有组织管理员角色的用户才能添加数据源。
举办了洛基
你可以在自己的硬件上运行LokiGrafana云.永久免费bob体育手机二维码计划包括Grafana, 50gb洛基日志,10K普罗米修斯系列等等。创建一个免费帐户开始.
洛基设置
要访问Loki设置,请单击配置(齿轮)图标,然后点击数据源,然后单击Loki数据源。
的名字 | 描述 |
---|---|
的名字 |
数据源名称。这就是在面板、查询和Explore中引用数据源的方式。 |
默认的 |
为新面板预先选择的默认数据源。 |
URL |
Loki实例的URL,例如:http://localhost:3100 . |
允许饼干 |
Grafana代理默认删除转发的cookie。按名称指定应转发到数据源的cookie。 |
最大线 |
Loki返回的日志行数的上限(默认为1000)。如果浏览器在Explore中显示日志时很慢,请降低此限制。 |
注意:要排除配置和其他问题,请在Unix系统上检查位于/var/log/grafana/grafana.log或在其他平台和手动安装上检查位于
/data/log的日志文件。
导出字段
派生字段配置允许您:
- 添加从日志消息中解析的字段。
- 添加一个使用该字段值的链接。
例如,您可以使用此功能直接从日志链接到跟踪后端,或者如果日志行中有userId,则可以链接到用户配置文件页面。这些链接出现在日志详细信息.
注意:Grafana Cloud用户可以通过以下方式请求修改此功能在云门户中打开支持票据.
每个派生字段由:
- 的名字,在日志详细信息中以标签的形式显示。
- 正则表达式,一个Regex模式,它在日志消息上运行,并捕获它的一部分作为新字段的值。只能包含一个捕获组。
- URL /查询-如果链接是外部的,则输入完整的链接URL。如果链接是内部链接,则此输入用作对目标数据源的查询。在这两种情况下,都可以用插值字段中的值
$ {__value.raw}
宏。 - 网址标签-(可选)设置自定义链接显示标签。链接标签默认为完整的外部URL或链接的内部数据源的名称,并被此设置覆盖。
- 内部链接-选择链接是内部的还是外部的。对于内部链接,数据源选择器允许您选择目标数据源。只支持跟踪数据源。
您可以使用调试部分来查看字段提取的内容以及URL是如何插入的。点击显示示例日志消息显示可以在其中输入日志消息的文本区域。
日志明细中显示链接的新字段:
Loki查询编辑器
Loki查询编辑器分为2个不同的模式,您可以在两者之间切换。请参阅下面每个部分的文档。
在编辑器的顶部,选择运行查询
运行查询。选择生成器|代码
选项卡在编辑器模式之间切换。如果查询编辑器处于Builder模式,则Builder部分将解释其他元素。
注意:在探索中,要运行Loki查询,选择
运行查询
.
每个模式都与其他模式同步,因此您可以在它们之间切换而不会丢失工作,尽管有一些限制。在构建器模式中还不支持一些更复杂的查询。如果你试着从代码
来构建器
使用这样的查询,编辑器将显示一个弹出窗口,解释您可以丢失查询的某些部分,您可以决定是否仍然想继续构建器
模式与否。
代码模式
代码模式允许您在文本编辑器中编写原始查询。它实现了自动完成功能和语法高亮显示来帮助编写复杂的查询。此外,它还包含日志浏览器
为了进一步帮助编写查询(参见下面的更多文档)。
有关Loki查询语言的更多信息,请参阅洛基文档.
自动完成
在输入过程中,自动完成在适当的时间自动启动。自动完成既可以建议静态函数,聚合和解析器,也可以建议动态项目,如标签。自动完成下拉菜单还显示了建议项目的文档,可以是静态的,也可以是可用的动态度量文档。
日志浏览器
使用Loki日志浏览器,您可以轻松地浏览标签和值的列表,并构造您选择的查询。日志浏览器有多步选择:
- 选择您想为搜索考虑的标签。
- 搜索所选标签的值。搜索字段支持模糊搜索。日志浏览器也支持刻面,因此它只显示您可能的标签组合。
- 选择查询类型—日志查询或速率指标查询。此外,您还可以验证选择器。
选项
的名字 | 描述 |
---|---|
类型 |
选择要运行的查询类型。的即时 针对单个时间点键入查询。我们使用时间范围内的“To”时间。的范围 在选定的时间范围内键入查询。 |
行限制 |
查询返回的日志行数的上限。默认是Loki设置中的最大行数限制。 |
传说 |
仅在仪表盘中可用。使用名称或模式控制时间序列的名称。例如{{主机名}} 是否替换为标签的标签值主机名 . |
决议 |
Resolution 1/1设置Loki metrics范围查询的步长参数,使每个像素对应一个数据点。为了获得更好的性能,可以选择较低的分辨率。bob彩票中奖计划1/2仅为每隔一个像素检索一个数据点,1/10每10个像素检索一个数据点。 |
建造者模式
工具栏
除了运行查询
按钮和模式切换器,在构建器模式下可以使用其他元素:
的名字 | 描述 |
---|---|
查询模式 | 有用的操作模式列表,可用于向查询快速添加多个操作,以实现特定的目标。 |
解释 | 切换以显示对所有查询部分和操作的逐级解释。 |
原始查询 | 切换以显示生成器生成的原始查询,该查询将被发送到Loki实例。 |
标签选择器
从下拉列表中选择需要的标签及其值。当选择label时,从服务器获取可用值。使用+
按钮,添加更多标签。使用x
按钮,删除标签。
操作
使用+操作
按钮,向查询中添加操作。为了便于导航,将操作分组为多个部分。当操作下拉菜单打开时,写入搜索输入以搜索和筛选操作列表。
查询中的操作显示为操作部分中的框。每个都有一个带有名称和附加操作按钮的标题。将鼠标悬停在操作标头上以显示操作按钮。单击v
按钮,可快速替换不同操作的同一类型。单击信息
按钮,打开操作的描述工具提示。单击x
按钮,删除操作。
操作可以在操作标头下有其他参数。有关每个操作的更多细节,请参阅操作描述或Loki文档。
有些操作只有在特定的顺序下才有意义,如果添加一个操作会导致无意义的查询,则将操作添加到正确的位置。按操作名称手动拖动操作框并拖放到合适的位置。
提示
在同样的情况下,查询编辑器可以检测哪些操作最适合选定的日志流。在这种情况下,它将在+操作
按钮。单击提示将操作添加到查询中。
解释模式
解释模式有助于理解查询。它一步一步地解释了所有查询部分和操作。
原始查询
属性时才显示此部分原始查询
从查询编辑器顶部工具栏切换设置为在
.它显示了将由查询编辑器创建和执行的原始查询。
用Loki查询
有两种类型的LogQL查询:
- 日志查询
- 度量查询
日志查询
Loki日志查询返回日志行内容。查询和显示Loki的日志数据可以通过探索,以及日志面板在仪表板。选择Loki数据源,然后输入LogQL查询以显示日志。F或更多关于日志查询和LogQL的信息,请参见Loki日志查询文档.
日志内容
当使用如上所述的搜索表达式时,您可以检索筛选结果周围的上下文。请按显示上下文
链接,您将能够研究您感兴趣的日志消息之前和之后的日志消息。
现场跟踪
Loki支持实时跟踪,实时显示日志。中支持此特性探索.
注意,Live tail依赖于两个Websocket连接:一个在浏览器和Grafana服务器之间,另一个在Grafana服务器和Loki服务器之间。如果运行任何反向代理,请相应地配置它们。下面的Apache2示例可以用于浏览器和Grafana服务器之间的代理:
ProxyPassMatch“^ / (api /数据源/代理/ \ d + /洛基/ api / v1 /尾)”“ws: / / 127.0.0.1:3000 / 1美元”
下面的示例显示了NGINX代理的基本配置。它假设Grafana服务器在http://localhost:3000/
, Loki服务器在本地运行,没有代理,并且您的外部站点使用HTTPS。如果你也在NGINX代理后面托管Loki,那么你可能也想为Loki重复下面的配置。
在http
在NGINX配置部分,添加以下映射定义:
映射$http_upgrade $connection_upgrade{默认升级;“关闭;}
在你的服务器
节,添加以下配置:
Location ~ /(api/datasources/proxy/\d+/loki/api/v1/tail) {proxy_pass http://localhost:3000$request_uri;主机$ Host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto "https";连接$connection_upgrade;升级$http_upgrade;} location / {proxy_pass http://localhost:3000/;主机$ Host;proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto "https"; }
注意:此特性仅在Grafana v6.3+中可用。
度量查询
LogQL支持使用允许从日志中创建指标的函数来包装日志查询。有关度量查询的更多信息,请参阅洛基度量查询文档
模板
在您的指标查询中,您可以使用变量代替服务器、应用程序和传感器名称之类的硬编码。变量显示为仪表板顶部的下拉选择框。这些下拉框可以方便地更改仪表板中显示的数据。
请查看模板介绍模板特性和不同类型的模板变量的文档。
查询变量
类型的变量查询允许您查询洛基的标签列表或标签值。Loki数据源插件提供了一个表单,用于为给定变量选择预期的值类型。表单有以下选项:
查询类型 | 标签 | 流选择器 | 描述 |
---|---|---|---|
标签的名称 | 不是必需的 | 不是必需的 | 返回标签名称列表。 |
标签的值 | 标签 |
属性的标签值列表标签 . |
|
标签的值 | 标签 |
日志流选择器 |
属性的标签值列表标签 在指定的日志流选择器 . |
Ad hoc过滤器变量
Loki支持特殊的特殊过滤器变量类型。它允许您动态地指定任意数量的标签/值过滤器。这些过滤器会自动应用于所有的Loki查询。
使用间隔和范围变量
你可以在查询变量中使用一些全局内置变量;__interval美元
,__interval_ms美元
,__range美元
,__range_s美元
而且__range_ms美元
.有关更多信息,请参阅全局内置变量.
注释
您可以使用任何非度量Loki查询作为源注释.日志内容将用作注释文本,日志流标签将用作标记,因此不需要额外的映射。
使用供应配置数据源
您可以使用Grafana的配置系统通过配置文件来设置数据源。您可以阅读更多关于它的工作原理以及可以为数据源设置的所有设置配置文档页面
这里有一个例子:
apiVersion: 1数据源:-名称:洛基类型:洛基访问:代理url: http://localhost:3100 jsonData: maxLines: 1000
这是另一个基本的认证和派生字段。请记住$
字符需要在YAML值中转义,因为它用于插入环境变量:
apiVersion: 1 datasources: - name: Loki type: Loki access: proxy url: http://localhost:3100 basicAuth: true basicAuthUser: my_user jsonData: maxLines: 1000 derivedFields: #字段与内部链接指向Grafana数据源。#现在,Grafana只支持Jaeger和Zipkin数据源作为链接目标。# datasourceUid值可以是任何值,但在所有已定义的数据源uid中应该是唯一的。- datasourceUid: my_jaeger_uid matcherRegex: "traceID=(\\w+)" name: traceID # url将被解释为数据源的查询url: '$${__value。带有外部链接的字段。- matcherRegex: "traceID=(\\w+)" name: traceID url: 'http://localhost:16686/trace/$${__value。' secureJsonData: basicAuthPassword: test_password
下面是与上述示例相对应的Jaeger数据源示例。请注意积家uid
值和洛基相符datasourceUid
价值。
datasources: - name: Jaeger type: Jaeger url: http://jaeger-tracing-query:16686/ access: proxy # UID应该匹配dervidedFields中的datasourceUid。uid: my_jaeger_uid
相关Grafana资源
开幕主题演讲:《Grafana 9》有什么新内容?
Raj Dutt, Myrle Krantz和Torkel Ödegaard揭开了Grafana 9的新内容。观看2022年GrafanaCONline开幕式主题演讲。随需应变。
使用Grafana插件统一您的数据:Datadog, Splunk, MongoDB等
在本次网络研讨会中,学习如何利用Grafana的插件生态系统访问80多个数据源,包括Datadog、Splunk、MongoDB等的插件。
从Grafana Enterprise和可观察性开始
加入Grafanabob电竞频道实验室团队,进行30分钟的演示,演示如何开始使用Grafana堆栈,这样您就可以在短短几分钟内从零到可观察性。