5分钟搞定Loki告警多渠道接入

电玩女神 2022-09-10 10:10 483阅读 0赞

简介: Loki是受Prometheus启发的水平可扩展、高可用、多租户日志聚合系统。用户既可以将Loki告警直接接入SLS开放告警,也可以先将Loki接入Grafana或Alert Manager,再借助Grafana或Alert Manager实现Loki间接接入SLS开放告警。

直接接入

您可以将开放告警服务配置为Loki的通知渠道,由日志服务告警系统完成告警降噪、通知等处理,并且通过包括短信、电话、微信、钉钉、邮箱在内的10多种通知渠道发送给用户。

SLS告警配置

  1. 创建行动策略

行动策略将决定了SLS在接收Loki告警消息后,以何种方式及何种渠道通知您。为此,您需要首先打开告警中心,点击告警管理,在下拉菜单中选择行动策略

9d446117fe1049d908670014b9d73f0f.png

然后点击页面左上角的添加按钮,在弹出的对话框中配置新的行动策略,然后点击确认。目前,系统支持语音,短信,邮箱,钉钉和企业微信等通知渠道,有关行动策略的具体配置方法,可参阅官方文档创建行动策略。

d0e2af13527146712a7b0f2a4b61a6d6.png

  1. 创建开放告警服务

首先打开告警中心,点击告警管理,在下拉菜单中选择开放告警

4ea025ddc6553ed384f23bf8b85eafc0.png

点击页面左上角的创建按钮,在弹出的对话框中配置新的开放告警服务,包括服务ID和服务名称,然后点击保存

f1f4440d9d11ead65adb10d78bbf22cd.png

  1. 创建开放告警应用

选择上一步骤中创建的服务,在操作栏中点击该服务的应用按钮:

7922f18928b5e88aea1d3956db44bad7.png

在弹出的对话框中点击创建,添加新的应用,点击保存。这里的协议请选择Loki,行动策略选择在第一步中配置的策略,其余选项可选择默认值。

3301977951f86951a281ee40995699be.png

  1. 获取开放告警应用接口

现在,您在第二步创建的开放告警服务中已经存在一个新的告警应用了。点击该应用操作栏的接口按钮,获取接口信息:

8badffbc98c902d873a5733062f45a56.png

接口地址由两部分构成:

  • 域名部分:SLS的接入地址,和地域相关,每个地域都有各自不同的接入地址;
  • 子路径部分:包括用于发送消息的Access Key Id和开放告警应用Id。需要注意的是,用户需要将子路径部分中的{ACCESS_KEY_ID}替换为具体阿里云RAM账户的Access Key Id,并且将权限策略AliyunLogOpenEventWrite赋予该账户。

Loki接入配置

在Loki配置文件的ruler配置项下,在alertmanager_url字段中填写上一步骤中获取的接口地址。典型的配置文件如下图所示:

ruler:

alertmanager_url: {ALIYUN_SLS_ENDPOINT}/event/webhook/RAMAK_{ACCESS_KEY_ID}/{WEBHOOK_APP_ID}

有关Loki Ruler的其他可选配置要求,请参阅Loki Rules。

效果展示

告警消息查看

在告警中心的事务视图界面,可以查看接收到的告警消息列表,以及该告警消息的详情。

9f03d3e142fb1529ca80cb384a49e6c7.png

告警接入概览

开放告警大盘,可以查看告警消息过滤、发送情况。

4b05065627c91bd602efe5b7eb7df2b3.png

告警通知概览

告警大盘展示了所有告警消息的概览视图,可以查看通过不同通知渠道发送的消息量。

4f03f2ec61031c79cb99ffe6e83e9ee5.png

间接接入

除了直接接入,用户也可以先将Loki作为数据源接入Alert Manager或Grafana,然后通过将Alert Manager或Grafana接入开放告警来实现Loki间接接入开放告警。下文将主要介绍如何将Loki接入Alert Manager或Grafana,有关如何将Alert Manager和Grafana接入SLS开放告警,请参阅接入Alert Manager告警和接入Grafana告警。

接入Alert Manager

在Loki配置文件的ruler配置项下,在alertmanager_url字段中填写Alert Manager服务器的地址,典型的配置文件如下图所示:

ruler:

alertmanager_url: {ALERT_MANAGER_URL}

有关Loki Ruler的其他可选配置要求,请参阅Loki Rules。

接入Grafana

在Grafana界面上,单击Configuration下的Data Source选项,并选择Loki。在弹出的页面中,对Loki进行配置,如下图所示:

8220eac818ec0a285f0c2e23b1b242b2.png

其中,主要的参数包括:

watermark_type_ZHJvaWRzYW5zZmFsbGJhY2s_shadow_50_text_Q1NETiBA6Zi_6YeM5LqR5LqR5qCW5Y-3_size_20_color_FFFFFF_t_70_g_se_x_16

除此之外,还需要对Loki日志的解析方式进行配置,将Loki的日志字段映射为Grafana的派生字段,如下图所示:

5913547c1217f2954733c22b939ae515.png

其中,每个派生字段包括:

  • Name -在日志详细信息中显示为标签。
  • Regex -在日志消息上运行的正则表达式模式,并将其中的一部分捕获为新字段的值。只能包含一个捕获组。
  • URL -如果链接是外部链接,则输入完整的链接 URL。如果链接是内部链接,则此输入用作对目标数据源的查询。在这两种情况下,您都可以使用${__value.raw }宏从字段中插入值。
  • URL Label -(可选)为链接设置自定义显示标签。链接标签默认为链接的内部数据源的完整外部 URL 或名称,并被此设置覆盖。
  • Internal Link -选择链接是内部链接还是外部链接。在内部链接的情况下,数据源选择器允许您选择目标数据源。仅支持跟踪数据源。

原文链接
本文为阿里云原创内容,未经允许不得转载。

发表评论

表情:
评论列表 (有 0 条评论,483人围观)

还没有评论,来说两句吧...

相关阅读

    相关 5分钟android混淆

    前言 混淆是上线前挺重要的一个环节。android使用的ProGuard,可以起到压缩,混淆,预检,优化的作用。但是很多童鞋还没有掌握正确的写混淆文件的姿势。我希望搞个模