最近因工作需要,接入了腾讯云监控回调接口,遇到了一些问题,记录如下。

1.什么是云监控回调接口?

腾讯云平台提供了告警相关策略的配置,用来监控云产品的健康状态。当云产品出现问题时,会发送告警。告警策略可以在这里进行配置。

腾讯云平台每月赠送1000条告警短信,当短信超过1000后,即使有告警,也不会再发送短信通知。此时,就需要获取到告警信息,用自己的短信渠道来发送。

2.在哪里配置回调地址

回调地址可以在告警策略页面,找到需要配置回调地址的策略,进入编辑页,滚动条拉到最底部,位置如下

点击配置,弹出如下页面:

这里有两个地方需要注意:

  1. 路径要写全,开头不要带http://或https://
  2. 回调地址的返回页面显示的code,具体方式下面再说。

3.回调接口的接入

可以参见腾讯云关于回调接口的文档。接口文档比较详细,对照着接入即可。

4.接口验证

填入接口后,会发现接口需要验证:

此时,就需要使用到第二步中的code。 这里要求接口在验证时,返回指定的code,由于项目是使用springmvc开发,处理如下:

@ResponseBody
@RequestMapping(value = "/callback")
public Object alarmMessageAccept(@RequestBody AlarmAcceptReq req) {
    log.info("收到告警消息:{}", JSON.toJSON(req));
    if(StringUtils.isEmpty(req.getSessionId())) {
        log.warn("告警消息【{}】的sessionId为空,不进行处理!", req);
		//注意:这里的返回值需要与腾讯云要求的值一致。
        return "112233";
    }

    int result = alarmMessageService.saveMessage(req);
    if(result != 1) {
        log.error("腾讯告警消息保存失败!消息内容:{}", req);
    }
    AlarmAcceptResp resp = new AlarmAcceptResp();
    resp.setRetCode(0);
    resp.setSessionId(req.getSessionId());
    return resp;
}

页面效果如下:

校验时,会收到腾讯云发送的请求:

验证通过后,就可以接收腾讯云的告警消息了。

转载于:https://my.oschina.net/funcy/blog/1927895

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐