实战模拟│企业微信机器人实时报错预警

简介: 实战预警,通过机器人实时监控,让你及时感知异常

一、创建机器人

  • 选择群右键管理聊天信息添加群机器人
  • 完善机器人基本信息,包括头像、名称等

1.png

2.png

3.png


二、机器人配置说明

  • 创建好的机器人都有一个唯一的 webhook 地址
  • 一定要保护好自己的 webhook 地址,如果一旦泄露,可以通过移除机器人,再重新创建一个去处理
  • 点击 webhook 地址,可以看到文档说明,也可以进行普通的推送消息配置
  • 其中的自定义推送消息,在机器人配置说明栏目里面有详细说明,但是需要自己开发

snipaste20220610_115415.png

snipaste20220610_115458.png


三、机器人信息推送

  • 当前自定义机器人 支持文本(text)、markdown(markdown)、图片(image)、图文(news)四种消息类型
  • 我们只要根据它的文档说明,将指定类型的消息发送给 webhook 地址即可实现消息推送
// 文本消息类型
{
"msgtype": "text",
"text": {
"content": "广州今日天气:29度,大部分多云,降雨概率:60%",
"mentioned_list":["wangqing","@all"],
"mentioned_mobile_list":["13800001111","@all"]
    }
}
// markdown消息类型
{
"msgtype": "markdown",
"markdown": {
"content": "实时新增用户反馈<font color=\"warning\">132例</font>,请相关同事注意。\n         >类型:<font color=\"comment\">用户反馈</font>         >普通用户反馈:<font color=\"comment\">117例</font>         >VIP用户反馈:<font color=\"comment\">15例</font>"    }
}
// 图片消息类型
{
"msgtype": "image",
"image": {
"base64": "DATA",
"md5": "MD5"    }
}
// 图文消息类型
{
"msgtype": "news",
"news": {
"articles" : [
           {
"title" : "中秋节礼品领取",
"description" : "今年中秋节公司有豪礼相送",
"url" : "www.qq.com",
"picurl" : "http://res.mail.qq.com/node/ww/wwopenmng/images/independent/doc/test_pic_msg1.png"           }
        ]
    }
}


四、错误预警推送

  • 这里以 Thinkphp 框架为例,将错误预警整合到项目中,实现实时错误推送
  • 首先在 config 配置文件添加错误处理类,执行哪个文件来处理错误
  • 配置完成后,项目只要遇到错误,程序都会走指定的文件去处理
  • 然后在该文件中完善错误推送预警逻辑即可,一般错误预警都是用 markdown 类型进行推送
'exception_handle'       => '\\app\\common\\exception\\WorkWx',
<?phpnamespaceapp\common\exception;
useException;
useitbdw\Ip\IpLocation;
useapp\common\util\Helper;
usethink\exception\Handle;
usethink\exception\HttpException;
usethink\exception\ValidateException;
classWorkWxextendsHandle{
constWEBHOOK='填写你自己的webhook地址';
publicfunctionrender(Exception$e)
    {
$clientIP=Helper::getClientIp();
$clientAddress=IpLocation::getLocation($clientIP);
unset($clientAddress['ip']);
$ipAddress=implode('-', $clientAddress);
// 参数验证错误if ($einstanceofValidateException) {
$data= [
'msgtype'=>'markdown',
'markdown'=> [
'content'=>"来自 **<font color=\"info\">天眼</font>** 的温馨提醒,请相关同事注意。>**描述:** <font color=\"comment\">参数验证错误</font>>**端IP:** <font color=\"comment\">{$clientIP}</font>>**地址:** <font color=\"comment\">{$ipAddress}</font>>**状态:** <font color=\"comment\">{$e->getCode()}</font>>**行数:** <font color=\"comment\">{$e->getLine()}</font>>**文件:** <font color=\"red\">{$e->getFile()}</font>>**提示:** <font color=\"warning\">{$e->getError()}</font>>**信息:** <font color=\"warning\">{$e->getMessage()}</font>"                ]
            ];
returnHelper::postCurl(self::WEBHOOK, json_encode($data));
        }
// 请求异常if ($einstanceofHttpException) {
$data= [
'msgtype'=>'markdown',
'markdown'=> [
'content'=>"来自 **<font color=\"info\">天眼</font>** 的温馨提醒,请相关同事注意。>**描述:** <font color=\"comment\">请求异常</font>>**端IP:** <font color=\"comment\">{$clientIP}</font>>**地址:** <font color=\"comment\">{$ipAddress}</font>>**状态:** <font color=\"comment\">{$e->getCode()}</font>>**行数:** <font color=\"comment\">{$e->getLine()}</font>>**文件:** <font color=\"red\">{$e->getFile()}</font>>**信息:** <font color=\"warning\">{$e->getMessage()}</font>"                ]
            ];
returnHelper::postCurl(self::WEBHOOK, json_encode($data));
        }
// 其他错误交给系统处理returnparent::render($e);
    }
}

snipaste20220610_115558.png

相关文章
|
2月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
660 7
|
4月前
|
网络协议
企业微信——给国外的邮箱发邮件报错Authentication results: DKIM = did not pass
企业微信——给国外的邮箱发邮件报错Authentication results: DKIM = did not pass
296 2
|
2月前
微信接口报错 "errcode":40163,"errmsg":"code been used, 如何处理?
【10月更文挑战第11天】微信接口报错 "errcode":40163,"errmsg":"code been used, 如何处理?
1112 1
|
2月前
|
JavaScript 小程序 开发者
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
440 0
|
4月前
|
监控 机器人 Shell
Nightingale——夜莺监控系统部署企业微信机器人告警系【四】
Nightingale——夜莺监控系统部署企业微信机器人告警系【四】
171 1
Nightingale——夜莺监控系统部署企业微信机器人告警系【四】
|
4月前
|
Linux 网络安全 API
企业微信自定义应用 企业可信IP配置 企业可信ip怎么设置
企业微信自定义应用 企业可信IP配置 企业可信ip怎么设置
|
3月前
|
缓存 机器人 网络安全
steam报错“您对 CAPTCHA 的响应似乎无效。请在下方重新验证您不是机器人”
你是否满怀期待地准备加入 Steam 的大家庭,却被烦人的 CAPTCHA 验证拦在了门外? 😫 “您对 CAPTCHA 的响应似乎无效。请在下方重新验证您不是机器人。” 这句冰冷的提示,仿佛在嘲笑你的努力,即使反复尝试,错误依然顽固地存在,让人抓狂!🤯 别担心,你不是一个人!很多小伙伴在初次接触 Steam 时,都会遇到这个令人头疼的问题。
|
4月前
|
人工智能 搜索推荐 安全
从零到一:微信机器人开发的实战心得
从零到一:微信机器人开发的实战心得
291 2
|
5月前
|
文字识别 小程序 安全
印刷文字识别操作报错合集之微信小程序调用API时路径总是返回不对,该如何处理
在使用印刷文字识别(OCR)服务时,可能会遇到各种错误。例如:1.Java异常、2.配置文件错误、3.服务未开通、4.HTTP错误码、5.权限问题(403 Forbidden)、6.调用拒绝(Refused)、7.智能纠错问题、8.图片质量或格式问题,以下是一些常见错误及其可能的原因和解决方案的合集。
|
5月前
|
小程序 安全 搜索推荐
【微信小程序开发实战项目】——个人中心页面的制作
本文介绍了如何设计和实现一个网上花店的微信小程序,包括个人中心、我的订单和我的地址等功能模块。个人中心让用户能够查看订单历史、管理地址和与客服互动。代码示例展示了`own.wxml`、`own.wxss`和`own.js`文件,用于构建个人中心界面,包括用户信息、订单链接、收藏、地址、客服和版本信息。我的订单部分展示了订单详情,包括商品图片、名称、销量、价格和订单状态,用户可以查看和管理订单。我的地址功能允许用户输入和编辑收货信息,包括联系人、性别、电话、城市和详细地址。每个功能模块都附有相应的WXML和WXSS代码,以及简洁的样式设计。
264 0
【微信小程序开发实战项目】——个人中心页面的制作