监控告警 -凯发k8国际|首页

j

告警和任务

监控告警

监控告警是日志管理系统的重要功能,您可以让日志易轻松替您监控数据,我们可以把您的已存搜索按预设计划周期性执行,当满足触发条件时我们将通过电子邮件及时通知您。

配置告警时的主要内容:

请阅读关于配置告警的细节。

告警配置示例

配置告警

日志易当中有两种方式配置告警:

  1. 单击搜索界面右边的“保存”,选择告警。

  2. 通过告警模块添加新的告警配置。

不论您通过哪种方式配置告警,配置告警都需要填写以下信息:

名称

您可以自由命名告警的名称,告警被触发时将推送此名称的告警。

描述

为告警做简短的描述,以便您能记起设置告警的原因。

执行计划

告警执行计划,您可以选择简单的时间单位,填写数字。日志易同时支持crontab时间格式配置格式。

格式: [秒] [分] [小时] [日] [月] [周] [年]

序号 说明 是否必填 允许填写的值 允许的通配符
1 0—59 , - * /
2 0—59 , - * /
3 小时 0—23 , - * /
4 1—31 , - * ? / l w
5 1—12or jan-dec , - * /
6 1—7or sun-sat , - * ? / l #
7 empty 或 1970-2099 , - * /

通配符说明:

* :表示所有值. 例如:在分的字段上设置 "*",表示每一分钟都会触发。

? :表示不指定值。使用的场景为不需要关心当前设置这个字段的值。例如:要在每月的10号触发一个操作,但不关心是周几,所以需要周位置的那个字段设置为"?" 具体设置为 0 0 0 10 * ?

- :表示区间。例如 在小时上设置 "10-12",表示 10,11,12 点都会触发。

, :表示指定多个值,例如在周字段上设置 "mon,wed,fri" 表示周一,周三和周五触发

/ :用于递增触发。如在秒上面设置"5/15" 表示从5秒开始,每增15秒触发(5,20,35,50)。 在日字段上设置'1/3'所示每月1号开始,每隔三天触发一次。

l :表示最后的意思。在日字段设置上,表示当月的最后一天(依据当前月份,如果是二月还会依据是否是润年[leap]), 在周字段上表示星期六,相当于"7"或"sat"。如果在"l"前加上数字,则表示该数据的最后一个。例如在周字段上设置"6l"这样的格式,则表示“本月最后一个星期五"

w :表示离指定日期的最近那个工作日(周一至周五). 例如在日字段上设置"15w",表示离每月15号最近的那个工作日触发。如果15号正好是周六,则找最近的周五(14号)触发, 如果15号是周未,则找最近的下周一(16号)触发.如果15号正好在工作日(周一至周五),则就在该天触发。如果指定格式为 "1w",它则表示每月1号往后最近的工作日触发。如果1号正是周六,则将在3号下周一触发。(注,"w"前只能设置具体的数字,不允许区间"-").'l'和 'w'可以一组合使用。如果在日字段上设置"lw",则表示在本月的最后一个工作日触发

# :序号(表示每月的第几周星期几),例如在周字段上设置"6#3"表示在每月的第三个周星期六.注意如果指定"6#5",正好第五周没有星期六,则不会触发该配置(用在母亲节和父亲节再合适不过了)周字段的设置,若使用英文字母是不区分大小写的 mon 与mon相同.

搜索

您可以从已存搜索中选择一个作为告警条件使用,日志易将提供已存搜索列表供您选择;如果您正在进行搜索,并决定使用当前搜索建立告警,请直接点击创建告警按钮,进一步创建告警条件。

告警类型

目前日志易提供事件数告警、字段统计告警、连续统计告警、基线对比告警和spl告警五种告警模式。

触发条件

1 事件数告警

您可以创建基于搜索结果的告警触发条件,在一个给定的时间范围内触发告警的阈值数。例如,您可以设置告警条件为5分钟内搜索结果计数超过10次(基于时间戳):

2 字段统计告警

字段统计告警为您提供针对字段内容的告警设置,在触发条件中您需要填写字段名,统计方式可以在下拉框中选择,cardinality(独立计数)、sum (求和)、avg(平均值)、max(最大值)、min(最小值)。

例如,告警触发条件为:clientip在5分钟之内某个ip的计数值超过10,则设定如下:

3 连续统计告警

连续告警为您提供连续触发告警功能,即当某个告警条件在某个时间内连续触发次数达到阀值,才触发告警。

例如,告警触发条件为:apache.status在1小时之内超过404的次数超过50,则触发告警,则设定如下:

4 基线对比告警

基线告警是将阈值设定为一个统计的基线值(随时间变动),您需要选择基线生成的时间范围,同时,基线对比告警给您提供了更灵活的触发范围设定方式——您可以在下拉框中选择大于、小于、在区间内、在区间外。

例如,resp_len如果与上周的统计平均值相比,小于基线值50%或者超过基线值150%即触发告警,设定的告警条件如下:

5 spl告警

用户可以针对通过spl语句建立的新字段建立告警,只需要在空格处填写正确的字段名称即可:

高级配置

支持在告警触发时发起另一个搜索,将其搜索结果附加在告警信息内

防止您在短时间内遭遇告警邮件轰炸,您可以自由设定告警抑制方案(默认不对告警进行抑制)

告警抑制:您可以设定一个固定时间段,在该时间段内触发告警之后则系统不再重复发送同类告警信息 倍增式时间段抑制:第一次触发告警后不再发送告警信息的时间段长度每次翻倍,直到设置的最大时长后重置 恢复提醒 :在告警恢复后通知用户

告警方式

您可以配置收到告警的方式,日志易支持rsyslog告警、邮件告警和告警转发三种模式。

选择添加rsyslog告警,用户可以根据实际情况自由更改rsyslog地址、协议标准等内容。syslog内容可参考右侧说明。

您可以自行设定邮件标题、通知的邮箱地址以及告警邮件内容。系统提供默认的标准告警模板,屏幕右侧是所有可选择模板变量名称,选择对应的变量名称复制到左侧的内容模板即可,设定完成后勾选“启用该告警”,点击保存完成操作。

添加能接受请求的地址,系统会发送json格式的告警内容到该地址。json的具体结构与模板基本相同,请参照下述模板。

三种模式都为使用一种模板进行内容的渲染,模板可用的变量:

{
"send_time": number, //往接收服务发送的时间点,unix时间戳。模板内是python的datetime对象
 "is_alert_recovery": false // 默认不是告警恢复邮件结果
 "exec_time": number, //搜索的执行时间点,unix时间戳。模板内是python的diatomite对象。
 "name": string, // 对应web页面上告警名
 "description": string, // 对应web页面上告警的描述
 "check_interval": number, // 检测时间间隔
 "search": {
"name": string, // 对应web上已存搜索的名字
"source_group": string, // 日志分组
"query": string, // query内容
"filter": string // filter内容
"extend_search_name": string, // 告警扩展搜索(可以没有)对应web上已存搜索的名字
"extend_source_group": string, // 告警扩展搜索(可以没有)的日志分组
"extend_query": string, // 告警扩展搜索(可以没有)的query内容
"extend_filter": string // 告警扩展搜索(可以没有)的filter内容
},
"result": {
"total": number, //命中了多少条日志
"hits": [
 {
    "appname": string,
    "tag": string,
    "hostname": string,
    "raw_message": string
 }// 一个hit只包含这四项
 {// 或者当是spl的统计型的结果的时候
  // hit的字段是key:value分别为用户
 // eval的值
 }
 .....
], // 命中的日志的内容,只有count统计和spl统计才有命中的具体日志
"terms": [
  {
     "key": string,
     "doc_count": number
  },
], // 字段统计告警中的独立数统计才有的结果
"columns": [
{
     "name": string, // 当spl时候列名的顺序是有意义的
     "type": string,
  }
], // 当时spl统计才有的结果
"value": number // 连续统计告警,基线告警的结果。字段统计告警里的最大最小平均值统计的结果。
"extend_total": number, //告警扩展搜索(可以没有)命中了多少条日志,当为spell的transaction和stats型结果时候是transaction的group和stats结果有多少行,而不是与之关联的事件数。
"extend_hits": [// (可以没有)
{// 普通事件结果
  "appname": string,
  "tag": string,
  "raw_message": string,
  "hostname": string
}// 当扩展搜索是spl搜索的stats结果时候,是在spl中eval出来的字段的值
], //告警扩展搜索(可以没有)搜索出来的内容
 },
 "strategy": {
"name": "count|field_stat|sequence_stat|baseline_cmp|spl_query",// 五种告警策略方式
"description": "事件数告警|字段统计告警|连续统计告警|基线对比告警|spl告警", // 策略中文描述,对应网页上
"trigger":  {
  "field": string, // 字段,策略count没有此字段
  "start_time": number, // 这次告警查询的开始时间。
  "end_time": number, // 这次告警查询的结束时间。
  "method": "count|cardinality|sum|avg|max|min", //统计方法,count策略的method是count
  "method_as_string": string,
  "threshold": number, //只有连续告警统计有阈值
  "baseline_base_value": number, //只有基线告警才有,基线的百分比的100%代表的数值。
  "baseline_start_time": number, // 对照基线的时间范围开始时间
  "baseline_end_time": number, // 对照基线的时间范围结束时间
  "compare": ">|<|in|ex", // 大于或小于,基线告警专有的还有in和ex
  "compare_style": string, // 合法值为fixed或者relative
  "compare_value": [
    number
  ] // array[number]比较的值,除了基线告警都是一个值比较,基线告警因为有in和ex这里会是两个值
 } // 触发条件
 }
}   

模板变量都需增加alert前缀,如send_time应为alert.send_time,以此类推。可参考模板邮件告警中的默认模板。