【问题标题】:Start and end parameters in query label_values ​(filename) loki查询中的开始和结束参数 label_values ​(filename) loki
【发布时间】:2021-03-09 13:46:45
【问题描述】:

我正在设置一个日志 grafana 仪表板,我想通过 loki 数据源将日志目录中生成的文件动态加载到仪表板选择变量中。

我可以加载,但只加载经过修改的日志文件。

1 天后不再出现。


26/11

27/11


知道apiloki/api/v1/label/filename有参数 startend

Loki API Documentation

咨询api,我有预期的结果

如何在查询label_values(filename) 中传递这些参数?

我试过label_values({start: 1603506254000000000, end: 1607506254000000000}, filename),但没用。

我是否有办法花费一个初始和最后一个时间段,以便我可以查看当月的所有文件?


更新:

我将问题转发给了 github grafana / loki,它看起来像是将来会完成的实现。 https://github.com/grafana/loki/issues/3011

【问题讨论】:

  • 您能否描述一下通过引入此文件名变量来解决的问题?可能有更好的选择来达到相同的结果。
  • 嗨 nehaev,我编辑了这个问题,看看现在是否更有意义。
  • 看起来您正在尝试按文件名对来自 Tomcat 的日志消息进行分组,这对我来说没有多大意义。 Tomcat 的日志文件名只是时间不同。但是时间戳无论如何都绑定到每个特定的日志记录,因此您可以在 Garafana 中按时间范围过滤日志,而无需创建此变量。

标签: api grafana dashboard grafana-loki


【解决方案1】:

并且列出的日志文件在 1 天后不再出现。

我猜这是因为在您的配置中,Grafana 会在加载仪表板时刷新标签。 Grafana 可能会从 Loki 加载的记录中获取标签。由于这些记录的数量有限(默认为 1000 条),因此您只能看到最新的标签。您可以尝试在数据源配置中增加此限制,以检查我的猜测是否正确并出现更多标签。

或者,您可以尝试在时间范围更改时刷新标签(请参见下图),然后当您选择到达仪表板的时间范围时,应该会出现正确的标签。查询仍然是label_values​(filename)

.

【讨论】:

  • 我的数据源配置为 1000000 条记录。刷新操作与加载组合无关。我在这里测试过,超过 1 天的日志没有为我列出。
  • 让我们区分日志消息和标签。如果您无法看到超过 1 天的日志消息,则可能是 Grafana 由于限制而未加载它们,或者 Loki 由于其 table_manager.retention_period 设置而丢弃它们。如果您可以看到旧消息,但它们的标签值未加载到变量中(具有我在答案中描述的配置),它看起来像 Grafana 中的一个错误,请将其归档到他们的问题跟踪器中。
  • 我把这个问题转发给了 github grafana / loki,它看起来像是一个将来会完成的实现。 github.com/grafana/loki/issues/3011
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多