简单的 LogQL 模拟器
LogQL 模拟器是一个在线工具,您可以使用它来尝试编写简单的 LogQL 查询并查看结果,而无需运行 Loki 实例。
Loki 支持的每种主要日志解析器都包含一组示例日志行
日志流选择器 {job="analyze"}
作为一个示例展示,并且在模拟器中的所有可能的示例查询中都保持不变。日志流是一组共享相同标签的日志。在 LogQL 中,您使用日志流选择器来确定查询结果中包含哪些日志流。
注意
这是一个非常有限的模拟器,主要用于评估过滤器和解析器。如果您想练习编写更复杂的查询,例如指标查询,可以使用 Grafana 中的 Explore 功能。
使用 LogQL 模拟器
使用单选按钮选择日志行格式。
您可以使用提供的示例日志行,或将自己的日志行复制粘贴到示例日志行框中。
使用提供的示例 LogQL 查询,或输入您自己的查询。日志流选择器在所有可能的示例查询中保持不变。本主题末尾还有额外的示例查询。
单击“运行查询”按钮,针对示例日志行运行输入的查询。
结果输出模拟了 Loki 如何返回查询结果。您还可以单击结果窗格中的每一行来展开详细信息,其中解释了为什么日志行包含或不包含在查询结果集中。
更多示例查询
这些是您可以在 LogQL 模拟器中使用的其他示例查询。
Logfmt
| logfmt | level = "debug"
解析 logfmt 格式的日志,并仅返回“level”字段等于“debug”的日志行。
| logfmt | msg="server listening on addresses"
解析 logfmt 格式的日志,并仅返回消息为“server listening on address.”的日志行。
JSON
| json | level="INFO" | file="SpringApplication.java" | line_format `{{.class}}`
解析 JSON 格式的日志,过滤出“level”字段为“INFO”且“file”字段为“SpringApplication.java”的行,然后格式化该行以仅返回“class”字段。
|~ `(T|t)omcat`
执行针对字符串“tomcat”或“Tomcat”的正则表达式过滤,不使用解析器。
非结构化文本
| pattern "<_> - <_> <_> \"<method> <url> <protocol>\" <status> <_> <_> \"<_>\" <_>" | method="GET"
使用模式解析器解析非结构化日志,过滤出 HTTP 方法为“GET”的行。
| pattern "<_> - <user> <_> \"<method> <url> <protocol>\" <status> <_> <_> \"<_>\" <_>" | user=~"kling.*"
使用模式解析器解析非结构化日志,提取“user”字段,并过滤出 user 字段以“kling”开头的行。