sentinl是什么

  • Kibi/Kibana Alert & Reporting App
  • Watching your data, 24/7/365

sentinl是一个免费的kibana预警与报告插件,与付费软件X-Pack功能类似。

Some Examples for illustration:

  • HIT COUNT PER HOUR
  • QUESTION: How many hits does index X receive hourly?
  • WATCHER: query index and return count of hits in last hour
  • ACTION: Notify with number of Hits per hour
  • METRIC THRESHOLDS
  • QUESTION: Is any of my monitored metrics surpassing a certain value?
  • WATCHER: query index and type for specific values, aggregated by an arbitrary field.
  • ACTION: Notify with aggs bucket details every time a threshold is surpassed or spike anomaly detected.
  • BLACKLISTS HITS
  • QUESTION: Is any of my users trying to reach blacklisted destinations?
  • WATCHER: query firewall logs comparing destination IPs to a blacklist.
  • ACTION: Notify admin via email if any IP >= 10 matches returned
  • FAILED LOGINS
  • QUESTION: Are there recurring failure attempts authenticating users on my network?
  • WATCHER: query active directory logs for login failures in last hour and compare to user index. .
  • ACTION: Notify admin via webhook if >= 10 matches returned
  • LEAK DETECTION (chain)
  • QUESTION: Are there any public leaks about my data I was not aware of?
  • WATCHER: query for user emails included in published leaks ingested from third parties.
  • ACTION: Save hits in secondary result Index. Notify via email if leak was not known in a secondary Watcher

安装

./kibana-plugin install file:./sentinl-v6.0.1.zip

安装完成后,要重启kibana

fuser -n tcp 5601
ps -ef | grep node
kill -9 pid ./kibana &

使用步骤

使用包括5个步骤

  • Step 1: New Watcher

give our Watcher a name and choose an execution frequency

  • Step 2: Input Query

es的搜索与聚合

  • Step 3: Condition

validate if the results received back are worth processing

语法与x-pack script condition语法类似

相当于过滤条件

"condition": {
"script": {
"script": "payload.hits.total>=1" //当报警条件为***出现的次数大于1
}
} "condition": {
"script": {
"script": "payload.hits.hits[0]._source.responsetime > 0.01" // 检索条件 响应时间大于 0.01秒
}
}
  • Step 4: Transform

Our data might need adjustments or post processing. Process our payload using a javascript expression/script

事后处理

  • Step 5: Actions

Let's form a notification using the mustache templating language。

可以采用多种方式发送通知。

transform

How to Adapt or Post-Process data

Post Process事后的处理。

The transform script is the wild member of the family and can be used to inject simple or complex logic into the pipeline before delivery to actions using pure javascript.

From converting format types, through generating brand new payload keys and interpolating data, transform is the way up. The script expects a boolean condition to trigger actions. A false condition can be forced to stop the execution. BONUS: Transforms can be saved and used across Watchers! "transform": { "script": { "script": "payload.newvar = payload.aggs.some.values['95.0']" } }

action举例之邮件发送

kibana.yml

logging.verbose: true
sentinl:
settings:
email:
active: true
host: smtp.exmail.qq.com
ssl: false
report:
active: true
tmp_path: /tmp/ 上面是官网的,下面是实践已OK
sentinl:
settings:
email:
active: true
user: tanyk@huawangtech.com
password: Dd@2016
host: smtp.exmail.qq.com
ssl: true
timeout: 10000
report:
active: true
tmp_path: /tmp/

先测试

mailx -S smtp=<smtp-server-address> -r <from-address> -s <subject> -v <to-address> < body.txt
yum -y install sendmail
yum install -y sendmail-cf /etc/init.d/sendmail start
chkconfig sendmail on
yum install -y mailx

vim /etc/mail.rc(optional)

set from=tanyk@mail.com
set smtp=smtp.exmail.qq.com
set smtp-auth-user=tanyk@mail.com
set smtp-auth-password=******
set smtp-auth=login
set nss-config-dir="/etc/pki/nssdb/"

test

echo "This is the message body and contains the message" | mailx -v -r "tanyk@mail.com" -s "This is the subject" -S smtp="smtp.exmail.qq.com" -S smtp-use-starttls -S smtp-auth=login -S smtp-auth-user="tanyk@mail.com" -S smtp-auth-password="******" -S ssl-verify=ignore -S nss-config-dir="/etc/pki/nssdb/" tanyk@163.com

参考文献

基于Kibana的可视化监控报警插件sentinl入门的更多相关文章

  1. ELK之Kibana的可视化监控报警插件sentinl的配置

    参考:https://www.bbsmax.com/A/gGdXbgXmJ4/ https://www.deathearth.com/333.html  https://www.cnblogs.com ...

  2. Kibana 可视化监控报警插件 KAAE 的介绍与使用

    https://blog.csdn.net/phachon/article/details/53424631 https://blog.csdn.net/Dragon714/article/detai ...

  3. JVM调优(二)——基于JVisualVM的可视化监控

    JVM调优(二)--基于JVisualVM的可视化监控 工具路径://java/jdk1.8xxx/bin/JVisuaVM.exe 监控本地的Tomcat 监控远程Tomcat 监控普通的JAVA进 ...

  4. 手把手教你基于C#开发WinCC语音报警插件「附源代码」

    写在前面 众所周知,WinCC本身是可以利用C脚本或者VBS脚本来做语音报警,但是这种方式的本质是调用已存在的音频文件,想要实现实时播报报警信息是不行的,灵活性还不够,本文主要介绍基于C#/.NET开 ...

  5. Kibana插件sentinl实现邮件报警

    为什么会突然想用到对日志的异常内容进行邮件报警,是因为在上周公司的线上业务多次出现锁表,开发在优化sql的同时,我也在想是不是可以对日志的异常内容进行检测并实现邮件预警. 在网上查询了一些资料后,决定 ...

  6. Kibana插件sentinl使用教程

    简介 对于Kibana的一些数据我们有时候是想要对某些字段进行持续关注的,这时候通过报警的手段就可以大幅提升对这些信息状态了解的及时性及可靠性.使用sentinl插件就可以帮助我们实现这个功能. 此教 ...

  7. 基于 HTML5 WebGL 的智慧楼宇三维可视化监控

    前言 可视化的智慧楼宇在 21 世纪是有急迫需求的,中国被世界称为"基建狂魔",全球高层建筑数量位居首位,所以对于楼宇的监控是必不可少.智慧楼宇可视化系统更多突出的是管理方面的功能 ...

  8. 基于ELK 7.50搭建elastalert 监控报警和权限控制

    ELK+监控报警全步骤 需求: 公司要求对出在windows服务器上的日志进行日志分析并根据关键字进行报警,并配置kibana权限控制.下面为详细步骤 环境: centos 7.6 elk版本7.50 ...

  9. 基于 WebGL 的 HTML5 楼宇自控 3D 可视化监控

    前言 智慧楼宇和人们的生活息息相关,楼宇智能化程度的提高,会极大程度的改善人们的生活品质,在当前工业互联网大背景下受到很大关注.目前智慧楼宇可视化监控的主要优点包括: 智慧化 -- 智慧楼宇是一个生态 ...

随机推荐

  1. freeRTOS学习二

    临界段,用一句话概括就是一段在执行时不能被中断的代码段. 临界段被打断的情况,一个是系统调度,还有一个就是外部中断. 对临界段的保护就是对中断的开和关. 空闲任务与阻塞延时 xTicksToDelay ...

  2. chgrp 命令

    NAME chgrp - change group ownership SYNOPSIS chgrp [OPTION]... GROUP FILE... chgrp [OPTION]... --ref ...

  3. CentOS学习之NTP服务配置详解

    详解centos7下ntp服务配置 一.ntp服务是什么 1.定义 NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议. 2.发展 首次记载在 ...

  4. [bzoj3162]独钓寒江雪_树hash_树形dp

    独钓寒江雪 题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3162 题解: 首先,如果没有那个本质相同的限制这就是个傻逼题. 直接树形dp ...

  5. poco编译与运行

    1.引言 Poco C++库是: 一系列C++类库,类似Java类库,.Net框架,Apple的Cocoa; 侧重于互联网时代的网络应用程序 使用高效的,现代的标准ANSI/ISO C++,并基于ST ...

  6. ARST第三周打卡

    Algorithm : 做一个 leetcode 的算法题 //二位数组查找 题目描述 //在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺 ...

  7. Linux就该这么学——新手必须掌握的命令之常用的系统工作命令

    echo命令 含义:echo命令用于在终端输出字符串或变量提取后的值,格式为 : echo [字符串|$变量] 示例: 将”Linuxprobe.com”输出到终端屏幕的命令为: [root@linu ...

  8. php 数组相关方法的一些实际妙用

    一.php数组合并两个数组(一个数组做键名,另一个做值) 有两个方法 1.循环 $arry_a = array(0, 1, 2); $arry_b = array('dongsir','董先生','董 ...

  9. react 深度 循环嵌套对象渲染问题 map

    查了一些资料貌似react的循环渲染对象只有map,但map只支持数组对象. 接到后台数据如下 { "list": { "A": [{ "image& ...

  10. Springboot使用javaMail进行邮件发送

    导入相关依赖 <!--邮件发送--> <dependency> <groupId>javax.mail</groupId> <artifactId ...