监控利器之Prometheus企业微信告警(五)

前面四篇已经详细讲解了Prometheus的整个结构体系架构、相关服务的部署、面板展示和企业邮箱告警,本篇主要讲解如何配置Prometheus的企业微信告警。

设置企业微信

目的主要是获取企业ID部门ID,应用AgentId和应用Secret

企业微信注册(已有企业微信账号请跳过)

企业微信注册地址:https://work.weixin.qq.com/
按照要求填写相应信息,注册企业微信
在这里插入图片描述

添加子部门

登录企业微信—>通讯录—>添加子部门—>添加成员
在这里插入图片描述
添加成员
在这里插入图片描述
在这里插入图片描述
记录部门ID
在这里插入图片描述

创建自建应用

登录企业微信—>应用管理—>创建应用
在这里插入图片描述
填写应用名称等信息,创建应用
在这里插入图片描述
创建应用后,记录应用的 AgentId 和 Secret
在这里插入图片描述

获取企业ID

登录企业微信—>我的企业
在这里插入图片描述

配置Alertmanager

修改Alertmanager配置文件

cat alertmanager.yml
global:
  resolve_timeout: 2m

templates:
  - '/usr/local/src/alertmanager/wechat.tmpl'

route:
  group_by: ['alertname','cluster','service']
  group_wait: 10s
  group_interval: 10s
  repeat_interval: 1h
  receiver: 'wechat'

receivers:
- name: 'wechat'
  wechat_configs:
  - corp_id: 'wwcd70xxxxxx2d836d'
    api_url: 'https://qyapi.weixin.qq.com/cgi-bin/'
    send_resolved: true
    to_party: '2'
    agent_id: '1000003'
    api_secret: 'zRCRVyxYGd5ej49BxxxxxxPtI9caW53mqNVDxTnRIXM'

微信告警模板

{
    
    {
    
     define "wechat.default.message" }}
{
    
    {
    
     if gt (len .Alerts.Firing) 0 -}}
阿里云 故障告警:  #此处自定义
{
    
    {
    
     range .Alerts }}
告警级别:{
    
    {
    
     .Labels.severity }}
告警类型:{
    
    {
    
     .Labels.alertname }}
告警主机: {
    
    {
    
     .Labels.instance }}
告警主题: {
    
    {
    
     .Annotations.summary }}
告警详情: {
    
    {
    
     .Annotations.description }}: {
    
    {
    
     (.StartsAt.Add 28800e9).Format "2006-01-02 15:04:05" }}
============
====done====
============
{
    
    {
    
    - end }}
{
    
    {
    
    - end }}
{
    
    {
    
     if gt (len .Alerts.Resolved) 0 -}}
阿里云 故障恢复:  #此处自定义
{
    
    {
    
     range .Alerts }}
告警级别:{
    
    {
    
     .Labels.severity }}
告警类型:{
    
    {
    
     .Labels.alertname }}
告警主机: {
    
    {
    
     .Labels.instance }}
告警主题: {
    
    {
    
     .Annotations.summary }}
告警详情: {
    
    {
    
     .Annotations.description }}: {
    
    {
    
     (.StartsAt.Add 28800e9).Format "2006-01-02 15:04:05" }}: {
    
    {
    
     (.EndsAt.Add 28800e9).Format "2006-01-02 15:04:05" }}
============
====done====
============
{
    
    {
    
    - end }}
{
    
    {
    
    - end }}
{
    
    {
    
    - end }}

重启Alertmanager服务,触发告警

检查alertmanager.yml 配置是否正确

cd /usr/local/alertmanager
./amtool check-config alertmanager.yml

在这里插入图片描述

重启Alertmanager服务,并查看告警

ps -ef |grep alertmanager |grep -v grep  |awk '{print $2}' | xargs kill -9  #停止Alertmanager服务
nohup ./alertmanager --config.file="alertmanager.yml"  --web.listen-address=":9093" >> ./logs/alertmanager.log 2>&1 &  #启动Alertmanager服务

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44729138/article/details/108124676