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

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

前置条件

- [观测云 SaaS](https://auth.guance.com/login/pwd)

- [安装 Func](https://func.guance.com/doc/maintenance-guide-requirement/)

配置 Webhook 机器人

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


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


点击“去创建”。


输入名称后,点击“添加”。


保存 Webhook 后,点击“保存。


配置 Func

编写脚本

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

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,帮助用户第一时间掌握系统运行状态。该功能有效避免了因系统故障未能及时发现而可能引发的更大损失,进一步提升了运维效率与系统可靠性。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容