菜单
开源

安装仪表盘、告警和记录规则

Loki 经过检测,通过 /metrics 端点暴露自身的指标,专为 Prometheus 抓取设计。每个 Loki 版本都包含一个 mixin。Loki mixin 提供了一组 Grafana 仪表盘、Prometheus 记录规则和告警,用于监控 Loki。

要使用 mixin 设置监控,您需要:

  1. 部署 Kubernetes 监控 Helm Chart。请遵循部署 Loki 元监控文档中的说明。
  2. 在 Grafana Cloud 或单独的 LGTM 技术栈中主动存储来自 Loki 集群的指标。

此过程假设您已使用 Helm Chart 设置了 Loki。

注意

请务必更新命令和配置以匹配您自己的部署。

在 Grafana 中安装 Loki 仪表盘

在 Loki 指标被 Kubernetes 监控 Helm Chart 抓取并存储在兼容 Prometheus 的时序数据库中后,您可以使用 Loki mixin 监控 Loki 的运行情况。

每个 Loki 版本都包含一个 mixin,其中包括:

  • 用于整体以及单个 Loki 组件健康状况的相关仪表盘
  • 记录规则用于计算仪表盘中使用的指标
  • 当 Loki 生成的指标超出正常参数范围时触发的告警

要在 Grafana 和 Mimir 中安装 mixins,一般步骤如下:

  1. 从 Loki 仓库下载 mixin 仪表盘。

  2. 在您的 Grafana 实例中导入仪表盘。

  3. 使用 mimirtoolalerts.yamlrules.yaml 文件上传到 Prometheus 或 Mimir。

下载 loki-mixin 仪表盘

  1. 首先,从 Github 克隆 Loki 仓库

    bash
    git clone https://github.com/grafana/loki
    cd loki
  2. 获取仓库的本地副本后,导航到 production/loki-mixin-compiled 目录。

    bash
    cd production/loki-mixin-compiled

此目录包含告警和记录规则以及仪表盘的编译版本。

注意

如果您想更改任何 mixin,请在 production/loki-mixin 目录中进行更新。使用该目录中的README说明重新生成文件。

将仪表盘导入 Grafana

dashboards 目录包含可以安装到您的 Grafana 实例的监控仪表盘。请参考 Grafana 文档中的导入仪表盘

提示

安装所有仪表盘。一次只能导入一个仪表盘。在仪表盘区域创建一个新文件夹,例如“Loki Monitoring”,作为保存导入仪表盘的便捷位置。

创建文件夹

  1. 打开您的 Grafana 实例并选择仪表盘
  2. 点击新建按钮。
  3. 新建菜单中选择新建文件夹
  4. 命名您的文件夹,例如,“Loki Monitoring”。
  5. 点击创建

导入仪表盘

  1. 打开您的 Grafana 实例并选择仪表盘
  2. 点击新建按钮。
  3. 新建菜单中选择导入
  4. 导入仪表盘屏幕上,选择上传仪表盘 JSON 文件。
  5. 浏览到 production/loki-mixin-compiled/dashboards 并选择要导入的仪表盘。或者,将仪表盘文件(例如 loki-operational.json)拖动到导入仪表盘屏幕的上传区域。
  6. 文件夹菜单中选择您要保存导入仪表盘的文件夹。例如,选择之前步骤中创建的“Loki Monitoring”。
  7. 点击导入

导入的文件将列在 Loki Monitoring 仪表盘文件夹中。

在 Grafana 中查看仪表盘

  1. 在您的 Grafana 实例中选择仪表盘
  2. 选择Loki Monitoring或您上传导入仪表盘的文件夹。
  3. 选择文件夹中的任何文件以查看仪表盘。

将告警和记录规则添加到 Prometheus 或 Mimir

规则和告警需要安装到 Prometheus 实例、Mimir 或 Grafana Enterprise Metrics 集群中。

您可以在 Loki 仓库的以下目录中找到告警和规则的 YAML 文件:

对于微服务模式

  • production/loki-mixin-compiled/alerts.yaml (可选)
  • production/loki-mixin-compiled/rules.yaml (必选)

您使用 mimirtool 将 mixin 告警和规则定义加载到 Prometheus 实例、Mimir 或 Grafana Enterprise Metrics 集群中。以下示例展示了如何将 mixin 告警和规则加载到 Grafana Cloud 实例中。

  1. 下载mimirtool

  2. 导出连接到您的 Grafana Cloud Mimir 实例的认证凭据。

    bash
    export MIMIR_ADDRESS=<CLOUD-MIMIR-URL>
    export MIMIR_API_USER=<CLOUD-MIMIR-USER>
    export MIMIR_API_KEY=<CLOUD-MIMIR-API-KEY>
    export MIMIR_TENANT_ID=<CLOUD-MIMIR-USER> # Same as MIMIR_API_USER when using Grafana Cloud

    查找这些凭据的最佳位置是:

    1. 登录Grafana Cloud并创建新的访问策略。
      1. 在主菜单中,选择安全性 > 访问策略
      2. 点击创建访问策略
      3. 给策略命名,然后选择以下权限:
        • 告警:写入和读取
        • 规则:写入和读取
      4. 点击创建
      5. 点击添加令牌。给令牌命名并点击创建
    2. 收集 Prometheus 的 URLuser
      1. 导航到 Grafana Cloud Portal 概览页面。
      2. 点击您的告警实例的详细信息按钮。
      3. 配置您的告警技术栈部分,收集指标认证设置的实例用户URL
  3. 使用之前导出 Mimir 环境变量的同一个终端,运行以下命令加载记录规则

    bash
    mimirtool rules load rules.yaml
  4. (可选)加载告警规则

    bash
    mimirtool rules load alerts.yaml

有关更多信息,请参阅mimirtool文档。

后续步骤

安装 Loki mixin 仪表盘、告警和记录规则后,您现在可以使用 Grafana 监控您的生产 Loki 集群了。升级 Loki 时,请务必查看 mixins,确保您使用的是最新版本的 mixin。

您现在可以继续以下步骤:

  • 发送日志:准备好开始将您自己的日志发送到 Loki 了吗?有几种方法可供选择。有关更多信息,请参阅发送数据
  • 查询日志:LogQL 是一种用于日志的丰富查询语言,包含许多用于改进日志检索和生成洞察的工具。有关更多信息,请参阅查询部分。
  • 告警:最后,您可以使用 Loki 的 ruler 组件基于日志查询创建告警。有关更多信息,请参阅告警