简单的事情应该简单(Simple things should be simple),这是Elastic {ON} ‘17的主题之一,Elastics收到了许多关于使用简单易用的UI创建警报的请求。事实证明,创建单个UI以对所有类型的警报均有效地工作非常困难。例如,可以在平均CPU使用率超过50%时创建警报的UI与可以在同一IP地址上有许多并发登录的情况下创建警报的UI看起来截然不同。

由于很难为所有类型的警报构建通用的UI,因此Elastic决定首先针对最常请求的警报处理UI:当指标超过或低于给定阈值时触发的简单阈值警报。

在开始示例之前,请确保您具有最低版本的Elasticsearch和Kibana的6.0.0版本,并且两者都安装了X-Pack。在最新的7.x版本里,X-Pack已经是发布版的一部分,不需要安装。另外,请确保您为Elasticsearch配置了具有足够权限的用户。现在,我们需要一些有趣的数据来构建警报。 Metricbeat是监视机器上的系统和用户进程的绝佳拍子。

在今天的练习里,我们来展示如何通过阈值检查,并发送通知到Slack。大家也可以尝试发送到电子邮件等方式。

创建Slack账号

我们首先需要创建一个自己的Slack账号(https://slack.com/),并具有自己的管理员权限。你可以参考链接 “Configuring Slack Account”(https://www.elastic.co/guide/en/elasticsearch/reference/7.5/actions-slack.html#configuring-slack)来配置自己的Slack账号,并生成一个相应的一个Webhook URL。这个URL将会在Elasticsearch里进行使用。

配置elasticsearch.yml

首先watcher必须是在有账号的情况下才可以工作的。如果你还不知道如何开通一个Elasticsearch的安全,那么请参阅我之前的文章“Elasticsearch:设置Elastic账户安全”。

因为这是一个付费的功能,你需要接受30天试用的条件才可以看到这个功能。为了能够使得watcher能够正常工作,我们必须配置elasticsearch.yml文件。打开elasticsearch安装目录下的config/elasticsearch.yml文件,并加入如下的配置:

    xpack.security.enabled: true
discovery.type: single-node xpack.notification.slack:
account:
monitoring:
message_defaults:
from: x-pack
to: notifications
icon: http://example.com/images/watcher-icon.jpg
attachment:
fallback: "X-Pack Notification"
color: "#36a64f"
title: "X-Pack Notification"
title_link: "https://www.elastic.co/guide/en/x-pack/current/index.html"
text: "One of your watches generated this notification."
mrkdwn_in: "pretext, text"

前面的两行是为了启动安全功能才进行加入的。后面的关于xpack的配置才是为watcher而设置的。

配置好我们的elasticsearch.yml文件后,我们在命令行中打入如下的命令:

./bin/elasticsearch-keystore add xpack.notification.slack.account.monitoring.secure_url

在这里,我们选择y。如果你是第一次运行这个命令的话,就不会有这样的一个提示了。你可以把你从Slack中配置的那个Webhook URL复制并粘贴到这里。这样我们的配置就完成了。然后,我们启动Elasticsearch。

安装及配置Metricbeat

只启动system模块即可。等安装好Metricbeat后,就可启动我们的metricbeat了。

配置Watcher

打开浏览器并导航到Kibana。单击侧面导航栏中的“Management”应用程序,然后单击Elasticsearch标题下的Watcher。

我们点击Create,然后,我们就可以开始配置我们的一个watcher了。我们选择Create threashold alert:

然后,我们可以按照上面的配置进行设置。再点击“Add action”:

我们选择Slack作为我们的通知方法。里面还有其它的几种方式,你们可以自己去尝试。

我们可以选择Send a sample message按钮来测试一下我们的Slack配置是否成功。最后,我们选择Create alert。这样就创建了一个Watcher。

我们可以在Watcher页面看到我们配置的每个Watcher。上面显示我们的其中的一个watcher已经发送通知了,而且是4分钟之前发送的。我们可以在我们的Slack界面看到如下的消息:

我们可以看到许多的通知信息不断地进来。它表明我们的配置是已经成功了。

上面我们通过Kibana的界面配置了Watcher。事实上,我们也可以通过API的方式来配置。请详细阅读我们的文档(https://www.elastic.co/guide/en/elasticsearch/reference/7.5/how-watcher-works.html)。

参考:

【1】https://www.elastic.co/guide/en/elasticsearch/reference/7.5/how-watcher-works.html

X-Pack:创建阈值检查警报的更多相关文章

  1. 如何在SharePoint2010中创建自定义电子邮件警报处理程序

    字段,如项目名称字段中,将被截断到的电子邮件通知中的 70 个字符.要解决 70 个字符的限制,请使用"更多信息"一节中的介绍的方法. 要嵌入电子邮件通知中的其他内容. 您想要更改 ...

  2. GitHub Student Developer Pack创建个人网站

    链接:https://zhuanlan.zhihu.com/p/20531579 这个开发包里有什么?作为学生开发者,如何最大化利用它的价值? Atom编辑器,GitHub推出的编辑器,和Sublim ...

  3. Python3 tkinter基础 Scrollbar pack 创建靠右、充满Y轴的垂直滚动条

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  4. Elastic:创建你的第一个Elastic alert

    文章转载自:https://blog.csdn.net/UbuntuTouch/article/details/105340379 在Elasticsearch可以提供给我们数据的存储及快速的搜索,但 ...

  5. SQL Server代理(3/12):代理警报和操作员

    SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这个系列的文章里所见,SQL Se ...

  6. 硝烟中的Scrum和XP-我们如何实施Scrum 15)多团队 Part 2/2 16)地理分散 17)检查列表 18)其他

    引入"团队领导"角色 假设有3个团队开发同一个产品 红色的P是PO, 黑色的S是SM, 蓝色是其他团队成员; 如何决定哪些人属于哪个团队? 怎么分配成员? 有人觉得让PO来做人员分 ...

  7. ASP.NET Core之跨平台的实时性能监控(2.健康检查)

    前言 上篇我们讲了如何使用App Metrics 做一个简单的APM监控,最后提到过健康检查这个东西. 这篇主要就是讲解健康检查的内容. 没看过上篇的,请移步:ASP.NET Core之跨平台的实时性 ...

  8. 健康检查NET Core之跨平台的实时性能监控

    ASP.NET Core之跨平台的实时性能监控(2.健康检查)   前言 上篇我们讲了如何使用App Metrics 做一个简单的APM监控,最后提到过健康检查这个东西. 这篇主要就是讲解健康检查的内 ...

  9. ASP.NET Core中的运行状况检查

    由卢克·莱瑟姆和格伦Condron ASP.NET Core提供了运行状况检查中间件和库,用于报告应用程序基础结构组件的运行状况. 运行状况检查由应用程序公开为HTTP终结点.可以为各种实时监视方案配 ...

随机推荐

  1. 数学工具类Math

    概述 java.lang.Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数.类似这样的工具 类,其所有方法均为静态方法,并且不会创建对象,调用起来非常简单 基本运算的方法 ...

  2. 【一知半解】synchronied

    synchronized是什么 synchronized是java同步锁,同一时刻多个线程对同一资源进行修改时,能够保证同一时刻只有一个线程获取到资源并对其进行修改,因此保证了线程安全性. synch ...

  3. Java开发学习(十四)----Spring整合Mybatis及Junit

    一.Spring整合Mybatis思路分析 1.1 环境准备 步骤1:准备数据库表 Mybatis是来操作数据库表,所以先创建一个数据库及表 create database spring_db cha ...

  4. 如何给selenium.chrome写扩展拦截或转发请求

    Selenium.WebDriver Selenium WebDriver 是一组开源 API,用于自动测试 Web 应用程序,利用它可以通过代码来控制chrome浏览器! 有时候我们需要mock接口 ...

  5. 解气!哈工大被禁用MATLAB后,国产工业软件霸气回击

    提起哈尔滨工业大学,相信很多人都不会陌生. 它是中国顶级的C9院校之一,从1920年建校的百余年来,哈工大一直享誉"工科强校"的美称,因其在航天领域的不凡成就,更是被人们誉为&qu ...

  6. Win10环境下使用Flask配合Celery异步推送实时/定时消息(Socket.io)/2020年最新攻略

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_163 首先得明确一点,和Django一样,在2020年Flask 1.1.1以后的版本都不需要所谓的三方库支持,即Flask-Ce ...

  7. Odoo14 需要哪些技术

    1 PostgreSQL:数据库,存储数据. 2 Python :主要作用是控制数据库,如:建表.关联字段.批量数据-- 3 html.css.javascript:基础前端. 4 scss:前端样式 ...

  8. 成为 Apache 贡献者,So easy!

    点击上方蓝字关注 Apache DolphinScheduler Apache DolphinScheduler(incubating),简称"DS", 中文名 "海豚调 ...

  9. 统计 Word 文档字数的方式

    描述 欲统计某文档的字数,有两种方式. "审阅"选项卡--"校对"组--字符统计 点击左下角字数统计 审阅查看字数 此步骤较为复杂,在审阅选项卡中可以查询文档的 ...

  10. iommu分析之---smmu v3的实现

    smmu 除了完成 iommu 的统一的ops 之外,有自己独特的一些地方. 1.Stream Table Stream Table是存在内存中的一张表,在SMMU设备初始化的时候由驱动程序创建好. ...