Prometheus集成springboot(七)

altermanage邮件告警

那么警报是如何发出的呢?Prometheus以一个固定时间间隔来评估所有规则,这个时间由evaluate_interval定义,我们将其设置为15秒。在每个评估周期,Prometheus运行每个警报规则中定义的表达式并更新警报状态。警报可能有以下三种状态:
·Inactive:警报未激活。
·Pending:警报已满足测试表达式条件,但仍在等待for子句中指定的持续时间。
·Firing:警报已满足测试表达式条件,并且Pending的时间已超过for子句的持续时间。Pending到Firing的转换可以确保警报更有效,且不会来回浮动。没有for子句的警报会自动从Inactive转换为Firing,只需要一个评估周期即可触发。带有for子句的警报将首先转换为Pending,然后转换为Firing,因此至少需要两个评估周期才能触发。到目前为止,警报的生命周期如下:
·节点的CPU不断变化,每隔一段由scrape_interval定义的时间被Prometheus抓取一次,对我们来说是15秒。
·根据每个evaluation_interval的指标来评估警报规则,对我们来说还是15秒。
·当警报表达式为true时(对于我们来说是CPU超过80%),会创建一个警报并转换到Pending状态,执行for子句。
·在下一个评估周期中,如果警报测试表达式仍然为true,则检查for的持续时间。如果超过了持续时间,则警报将转换为Firing,生成通知并将其推送到Alertmanager。
·如果警报测试表达式不再为true,则Prometheus会将警报规则的状态从Pending更改为Inactive。

global:
  smtp_smarthost: 'smtp.163.com:465'  #此处我用的163的邮箱左右告警通知邮箱
  smtp_from: 'yitian_hm123@163.com'
  smtp_auth_username: 'yitian_hm123@163.com'
  smtp_auth_password: '************'
  smtp_require_tls: false
templates:
  - 'template/*.tmpl'
route:
  group_by: ['alertname','instance']
  group_wait: 30s
  group_interval: 5m
  repeat_interval: 1h
  receiver: 'email'
  routes:
    - match:
        severity: critical
      receiver: pager
    - match_re:
        severtity: warning|critical
      receiver: support_team
receivers:
  - name: 'email'
    email_configs:
      - to: 'yitian881112@126.com'
  - name: 'support_team'
    email_configs:
      - to: '591710882@qq.com'
  - name: 'pager'
    email_configs:
      - to: '591710882@qq.com'
      - to: 'yitian881112@126.com'
inhibit_rules:
  - source_match:
      severity: 'critical'
    target_match:
      severity: 'warning'
    equal: ['alertname', 'dev', 'instance']

如上配置,当发生告警的时候根据告警的级别通过路由进行匹配,如果cirtical会发给对应的收件人类型,在每个收人对象下面可以配置多个收件邮箱、

在这里插入图片描述
下面简单解释下关于邮箱配置一些字段


929/5000

默认的SMTP From报头字段。

[smtp_from: ]

#用于发送邮件的默认SMTP智能主机,包括端口号。

#端口号通常是25,或587的SMTP通过TLS(有时称为STARTTLS)。

#示例:smtp.example.org: 587

[smtp_smarthost: ]

# SMTP服务器的默认主机名。

[smtp_hello: | default = "localhost"]

# SMTP认证使用cramp - md5, LOGIN和PLAIN。如果为空,则Alertmanager不验证到SMTP服务器。

[smtp_auth_username: ]

# SMTP认证使用LOGIN和PLAIN。

[smtp_auth_password: ]

# SMTP认证使用PLAIN。

[smtp_auth_identity: ]

# SMTP认证使用cam - md5。

[smtp_auth_secret: ]

#默认SMTP TLS要求。

#注意,Go不支持到远程SMTP端点的未加密连接。

[smtp_require_tls: | default = true]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yitian_hm

您的支持是我最大鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值