iMC全部告警中生成新的告警,通过微信转发出来,但是微信上并没有收到对应的告警信息。
1、iMC上有授权过期导致调用API接口收到影响。
2、iMC端口设置的端口和微信公众平台要求不符。
3、申请的测试号为订阅号,而iMC上配置时选择为服务号。
4、复现问题,重新生成告警,收集iMC的前台DEBUG日志和告警DEBUG日志信息分析:有公众号返回的报错。2018-09-12 11:44:17 [INFO ] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl::sendMessageToFan] Send message to fan. returnCode : 45015 //微信公众号返回报错代码。
收集jserver的DEBUG级别(iMC安装路径\client\log\imcforeground)和imcfaultdm的DEBUG日志信息分析如下:
2018-09-12 11:44:17 [DEBUG] [http-nio-443-exec-14] [com.imc.fault.servlet.AccessBoardMgrServlet::packFaultBordDataFromResp] packFaultBordDataFromResp()方法返回值return value=0,4,10,3,0,2,0,0,0,0,0,0,
2018-09-12 11:44:17 [DEBUG] [http-nio-443-exec-14] [com.imc.fault.servlet.AccessBoardMgrServlet::doPost] ********faultLevelTotalNums={"faultLevelTotalNums":[4,10,3,0,2],"voiceLevel":5,"criticalData":{"name":["应用管理告警"],"value":[4],"chartHeight":100,"nodata":"无数据","color":"#FF0000","title":"告警级别 紧急<\/b>","severity":1,"container":"containerarea1"},"majorData":{"name":["接口/链路状态告警"],"value":[10],"chartHeight":100,"nodata":"无数据","color":"#FF8000","title":"告警级别 重要<\/b>","severity":2,"container":"containerarea2"},"minorData":{"name":["网管站性能告警"],"value":[3],"chartHeight":100,"nodata":"无数据","color":"#FFFF00","title":"告警级别 次要<\/b>","severity":3,"container":"containerarea3"},"warningData":{"name":[],"value":[],"chartHeight":80,"nodata":"无数据","color":"#00FFFF","title":"告警级别 警告<\/b>","severity":4,"container":"containerarea4"},"eventData":{"name":["流量分析与审计告警"],"value":[2],"chartHeight":100,"nodata":"无数据","color":"#808080","title":"告警级别 通知<\/b>","severity":5,"container":"containerarea5"},"glint":{"event":false,"warnning":false,"minor":false,"major":false,"critical":false}}
2018-09-12 11:44:17 [DEBUG] [http-nio-443-exec-14] [com.imc.filter.ImcExpiresFilter::getExpirationDate] No Expires configuration found for content-type "text/html;charset=GBK"
2018-09-12 11:44:17 [DEBUG] [http-nio-443-exec-14] [com.imc.filter.ImcExpiresFilter::onBeforeWriteResponseBody] Request "/imc/fault/accessMgrServletForBoard" with response status "200" content-type "text/html;charset=GBK", no expiration configured
2018-09-12 11:44:17 [DEBUG] [com.imf.61.0.MessageBroadcaster-3] [com.imc.res.wechat.func.SendWeChatReg::handleMsg] Receive a WeChat message from ASN.
2018-09-12 11:44:17 [DEBUG] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl::getAccessToken] current token can use, not invalid .
2018-09-12 11:44:17 [INFO ] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl::sendMessageToFan] Send message to fan. returnCode : 45015 //微信公众号返回报错代码。
2018-09-12 11:44:17 [ERROR] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl$5::run] Send message to omyJ81S2mh9kvwN5AdsHNJyHEX4M failed. Error code is 1.
2018-09-12 11:44:17 [DEBUG] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl::getAccessToken] current token can use, not invalid .
2018-09-12 11:44:18 [INFO ] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl::sendMessageToFan] Send message to fan. returnCode : 45015
2018-09-12 11:44:18 [ERROR] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl$5::run] Send message to omyJ81Xhvt3RP-PnmxDTnnh7D_Ow failed. Error code is 1.
2018-09-12 11:44:18 [DEBUG] [com.imf.61.0.MessageBroadcaster-4] [com.imc.res.wechat.func.SendWeChatReg::handleMsg] Receive a WeChat message from ASN.
2018-09-12 11:44:18 [DEBUG] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl::getAccessToken] current token can use, not invalid .
2018-09-12 11:44:18 [INFO ] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl::sendMessageToFan] Send message to fan. returnCode : 45015
2018-09-12 11:44:18 [ERROR] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl$5::run] Send message to omyJ81S2mh9kvwN5AdsHNJyHEX4M failed. Error code is 1.
2018-09-12 11:44:18 [DEBUG] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl::getAccessToken] current token can use, not invalid .
2018-09-12 11:44:19 [INFO ] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl::sendMessageToFan] Send message to fan. returnCode : 45015
2018-09-12 11:44:19 [ERROR] [Thread-34] [com.imc.res.wechat.func.WeChatMgrImpl$5::run] Send message to omyJ81Xhvt3RP-PnmxDTnnh7D_Ow failed. Error code is 1.
2018-09-12 11:44:19 [DEBUG] [http-nio-443-exec-17] [com.imc.servlet.filters.UrlAccessController::doFilter] uri is : /imc/apm/listview/appListView_contentOnly.jsf
2018-09-12 11:44:19 [DEBUG] [http-nio-443-exec-17] [com.imc.common.faces.MyViewHandlerWrapper::calculateRenderKitId] user-agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0
2018-09-12 11:44:19 [DEBUG] [http-nio-443-exec-17] [com.imc.common.faces.MyViewHandlerWrapper::calculateRenderKitId] Accept: application/xml, text/xml, */*; q=0.01
1、查看iMC右上角关于中是否有过期授权或者过期组件,如果有可以通过license扩容删除过期授权,或者去部署过期组件。
2、确认iMC映射到外网的端口是80。该端口受微信公众平台要求的限制。
3、申请的测试号为订阅号,而iMC上配置时选择为服务号。需要登录到iMC上系统配置—微信公众平台配置,增加公众平台配置,类型选择申请的对应的公众号类型。
4、前台日志和告警日志中有微信返回错误代码45015,经查看相关资料发现是用户和服务号超过了最大互动时间,就不给用户推消息了,需要用户和服务号互动一下,任意发个消息后,重新测试告警即可。微信可以收到告警信息:
该功能只支持经过腾讯认证的服务号、订阅号类型的微信公众号。若“以本系统作为微信公众号服务器”参数设置为“否”,则无法使用“配置”功能
参数说明:
以本系统作为微信公众号服务器:是否将本系统作为微信公众号的服务器,若选择“是”,则需要在微信公众平台官网中启用“开发者中心”,并配置“URL(服务器地址)”为本系统预定义的地址“http://imc_host:port/imc/weChatServlet”,其中imc_host为本系统服务器IP地址,port为端口号。
Token:Token即令牌,本系统使用该参数判断请求消息是否来自微信公众平台。该参数可以任意配置但必须与微信公众平台官网中配置的Token保持一致,并且不同微信公众号的该参数不能相同。
AppID:公众号的应用ID,在微信公众平台官网中启用“开发者中心”后由微信公众平台分配。本系统使用AppID和AppSecret与微信服务器通信。该值必须与微信公众平台官网中分配的AppID保持一致。
AppSecret:公众号的应用密钥,在微信公众平台官网中启用“开发者中心”后由微信公众平台分配。本系统使用AppID和AppSecret与微信服务器通信。该值必须与微信公众平台官网中的AppSecret保持一致。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作