观测云告警对接华为 WeLink 最佳实践

华为云 WeLink 是华为推出的全场景数字化协同办公平台,旨在帮助企业实现高效、安全的在线协作。观测云则是专为 IT 工程师打造的全链路可观测性平台,具备完善的异常监测体系,能够对基础设施、应用程序及日志等各类数据进行实时监控,并在发现异常时自动触发告警。本文主要介绍如何将观测云的告警信息推送至 WeLink 的实现方式。

前置条件

配置 Webhook 机器人

点击群右上角的齿轮图表,弹出讨论组,在"讨论组管理"下面点击"群助手"。

点击"添加群助手",再点击"创建"。

点击"去创建"。

输入名称后,点击"添加"。

保存 Webhook 后,点击"保存。

配置 Func

编写脚本

登录 Func,点击"开发"->"脚本库"->"新建脚本集",输入 "webhook",鼠标移到 webhook 上,点击"新建脚本",输入"welink_prod",编辑脚本,输入如下内容,最后点击"发布"。

ini 复制代码
import requests
import json
import time
import uuid

@DFF.API('自定义发送 weLink')
def send_welink(**kwargs):
    token = _DFF_HTTP_REQUEST.get('query').get('token')
    title = kwargs.get('df_title','事件告警')
    messageJson = [kwargs.get('df_message','告警')]
    status = kwargs.get('df_status','info')
    msgStr = messageJson[0]
    url = kwargs.get('df_event_link')
    jumpHtml = url
    webhook_url = "https://open.welink.huaweicloud.com/api/werobot/v1/webhook/send"
    params = {
        "token": token,
        "channel": "standard"
    }
    # 请求头(Headers)
    headers = {
        "Content-Type": "application/json",  # 必须指定 JSON 格式
        "Accept": "application/json"
    }

    # 请求体(Body),发送的消息内容
    payload = {
        "messageType": "text",
        "content": {
            "text": msgStr + "\n\n" + jumpHtml  # 消息内容
        },
        "timeStamp": int(time.time() * 1000),   # 毫秒时间戳
        "uuid": uuid.uuid4().hex                # 32 位十六进制字符串
    }    

    # 发送 POST 请求
    response = requests.post(
        webhook_url,
        params=params,  # URL 参数(token 和 channel)
        headers=headers,
        data=json.dumps(payload)  # 将字典转为 JSON 字符串
    )
    # 打印响应
    print("Status Code:", response.status_code)
    print("Response:", response.json())

配置截图

配置函数

依次进入 Func 界面的"管理"->"函数 API",点击"新建",运行函数选择上步编写的脚本,点击"保存"。

在函数 API 界面,刚创建的函数行后面有个"示例",点击后,复制"POST简化形式(JSON)"里面的 url。

创建监控器

新建通知对象

登录观测云,进入"监控"->"通知对象管理"->"新建通知对象",选择"webhook",Webhook地址中粘贴上步复制的 url,最后点击"确认"。

新建告警策略管理

进入"监控"->"告警策略管理"->"新建告警策略",通知配置中按下图配置,最后点击"保存"。

进入"监控"->"监控器"->"从模版新建",选择一个监控器,在告警配置中选择上步创建的告警策略。

效果展示

当监控器达到触发条件后,WeLink 收到告警。

总结

观测云借助 Func 功能,能够将告警信息实时推送至 WeLink,帮助用户第一时间掌握系统运行状态。该功能有效避免了因系统故障未能及时发现而可能引发的更大损失,进一步提升了运维效率与系统可靠性。

相关推荐
zfj3212 天前
Linux 系统 I/O 监控命令大全
linux·服务器·数据库·io·监控
木二_7 天前
附055.Kubernetes部署Zabbix实战
云原生·容器·kubernetes·zabbix·监控
其美杰布-富贵-李7 天前
TensorBoard 与 WandB 在 PyTorch Lightning 中的完整指南
人工智能·pytorch·python·监控·调优
货拉拉技术8 天前
出海技术挑战——Lalamove智能告警降噪
人工智能·后端·监控
lvbinemail8 天前
添加zabbix-agentd.service
linux·运维·服务器·zabbix·监控
QC七哥9 天前
基于vnstat监控服务器的网卡流量
运维·服务器·监控·vnstat
不一样的少年_11 天前
【性能监控】别只做工具人了!手把手带你写一个前端性能检测SDK
前端·javascript·监控
FIT2CLOUD飞致云14 天前
操作教程丨通过1Panel快速安装Zabbix,搭建企业级监控系统
运维·服务器·开源·zabbix·监控·1panel
逻极14 天前
Python MySQL监控与日志配置实战:从“盲人摸象”到“明察秋毫”
python·mysql·监控·日志
闲人编程14 天前
Prometheus监控指标集成指南
prometheus·监控·promql·仪表盘··cncf·codecapsule