tencent cloud

文档反馈

自定义消息

最后更新时间:2023-07-11 17:58:32
该文档目前已无效,请参考该产品文档总览页。

    概述

    腾讯云可观测平台服务提供了完整的监控数据采集获取,数据计算聚合,可视化数据展示,告警判定收敛,及告警分发与通道触达等能力。
    现腾讯云可观测平台自定义消息将告警通道能力产品化独立开放,面向业务监控告警场景,为自有服务和自建监控系统提供告警分发与通道能力。助力客户快速构建打通告警消息推送渠道。

    功能

    自定义消息面向业务告警场景提供了以下功能:

    • 告警分发:通过配置管理不同的消息策略,将从属不同模块和资源的告警推送至对应消息策略,实现告警信息的分发。
    • 告警订阅:消息策略可配置接收组实现对应告警信息的订阅。
    • 告警渠道:支持对消息策略配置告警渠道,免配置的接收组内接收人使用对应渠道推送告警信息。
    • 告警历史查看检索:对应消息策略可以查看历史推送的告警信息,并支持对告警内容关键字进行搜索。

    场景

    • 自定义业务告警推送:自建监控系统,告警通过特定告警渠道推送至对应接收人
    • 服务重要信息及时触达:特定服务状态与异常发生时及时推送开发者,无需监控、日志系统对接与告警策略配置。

    原理与调用方式

    腾讯云可观测平台自定义消息以消息策略为告警信息接收与分发推送中枢,消息策略有全局唯一 ID 标识。告警信息通过提供对应消息策略 ID 实现信息分发至各消息策略,消息策略再根据订阅关系和告警渠道完成告警消息触达接收人。

    腾讯云可观测平台自定义消息支持两种调用方式为客户提供告警通道服务。

    • API:使用发送自定义消息内容 API,传递指定消息策略 ID 与告警内容,将告警信息推送至对应消息策略。
    • 监控组件:在已安装腾讯云可观测平台 监控组件 的 CVM 中,可直接使用提供的命令行发送工具cagent_tools,调用相应命令指定策略 ID 和内容,并在告警时发送相关内容。

    操作指南

    消息策略创建与管理

    创建、配置、编辑和删除消息策略。

    1. 登录 腾讯云可观测平台控制台
    2. 在左侧导航栏中,单击告警配置-自定义消息 进入自定义消息页面。
    3. (可选)单击新增消息策略,填写消息策略名称,选择消息接收组和勾选对应告警渠道。单击完成,完成策略创建。
    4. (可选)单击特定消息策略操作栏编辑,对策略名称,消息接收组和告警渠道进行修改。单击完成,完成策略修改。
    5. (可选)单击特定消息策略操作栏删除,单击确认弹窗中的确定,完成策略删除。

    告警信息调用推送

    调用 API 与使用监控组件命令行工具发送信息至自定义消息服务。

    1. 登录 腾讯云可观测平台控制台的 自定义消息页面 获取对应告警分发目的策略的策略ID。
    2. (可选)方式一通过调用发送自定义消息内容 API,传递指定消息策略 ID 与告警内容至对应消息策略。
    3. (可选)方式二通过使用监控组件提供的命令行发送工具cagent_tools,调用命令指定策略 ID 和内容,推送告警信息至对应消息策略。
      注意:

      cagent_tools 仅适用于腾讯云中使用系统镜像创建的云服务器。

    示例1:Linux系统使用 cagent_tools

    1. 安装 Linux 监控组件,安装方法见安装监控控件
    2. 查看工具帮助,直接执行以下命令,查看帮助信息:
      cagent_tools
      

    结果如下图:

    3. 调用命令指定策略 ID 和内容推送告警内容。执行以下命令:

    cagent_tools alarm ‘$告警内容’ cm-xxxxxxxx(策略ID)
    

    注意:

    • 中文告警内容目前仅支持 utf-8 编码格式。
    • 告警内容最大长度为256字节, 超出部分会截断。
    • 成功发送告警信息,命令行提示"send alarm OK!",进程执行返回码为0;若发送告警信息失败,命令行提示相应错误,进程执行返回码为非0。
    1. 附使用案例。
    • PHP示例:

      $link = mysql_connect('192.168.0.2', 'mysql_user', 'mysql_password');
      if (!$link) {
      //alarm content
      $alarmContent = " Connection failed ";
      $cmd = “cagent_tools alarm $alarmContent cm-xxxxxxxx(policyId)”; 
      system($cmd);
      die('Could not connect: ' . mysql_error());
      }
      
    • Shell 示例:

      #!/bin/sh
      PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:$PATH
      CAGENT_CMD = /usr/bin/cagent_tools
      cnt=$(ps -ef | grep mysqld | grep -v grep | wc -l)
      if [ $cnt -eq 0 ] ; then
       # alarm content 
       cagent_tools alarm "the process mysqld died." cm-xxxxxxxx(policyId)
      fi
      

    示例2: Windows 系统使用 cagent_tools

    1. 安装 Windows 监控组件,安装方法见 安装监控控件
    2. 查看工具帮助,在命令行界面下执行以下命令,查看帮助信息:
      cagent_tools
      

    结果如下:

    3. 调用命令指定策略 ID 和内容推送告警内容,执行以下命令:

    cagent_tools alarm "$告警内容" cm-xxxxxxxx(策略ID)
    


    4. 附使用案例。

    • DOS 示例:
      @echo off
      set service_name=StargateSvc
      sc query %service_name% > nul
      if not %errorlevel% == 0 (
       cagent_tools alarm "service %service_name% didn't exist" cm-xxxxxxxx(policyId)
      )
      
    注意:

    • 中文告警内容目前支持 UTF-8 和 GBK 编码格式。
    • 告警内容显示最大长度为256 字节, 超出部分会截断。
    • 成功发送告警信息,命令行提示"send alarm OK!",进程执行返回码为0;若发送告警信息失败,命令行提示相应错误,进程执行返回码为非0。

    告警历史查看与检索

    1. 登录 腾讯云可观测平台控制台
    2. 在左侧导航栏中,单击告警配置>自定义消息,进入自定义消息页面。
    3. 单击对应策略近24小时触发告警数字,如下图所示。
    4. 系统将打开悬浮窗展示策略所发送所有告警信息内容,时间与调用方式。
    5. (可选)在右上侧搜索框内输入告警消息内容关键字或者调用 cagent_toolsCVM 的内网 IP,检索对应的告警记录。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持