public void update(){
List<App> apps=appServiceImpl.getAllApp();
boolean flag=false;
for(App app:apps){
if(StringUtils.isNotBlank(app.getBindUrl())){
try {
String data = HttpUtil.sendGet(app.getBindUrl(),null);
Map<String,String> rs = JSON.parseObject(data,new TypeReference<Map<String,String>>(){});
List<Map<String,String>> dt =JSON.parseObject(rs.get("data"),new TypeReference<List<Map<String,String>>>(){});
List<String> ips=new ArrayList<String>();
for(Map m:dt){
if(null!=m.get("ip")&&StringUtils.isNotBlank(m.get("ip").toString())){
ips.add(m.get("ip").toString());
}
}
LOG.info("get agent from url:"+JSON.toJSONString(ips));
if(StringUtils.isNotBlank(data)){
appServiceImpl.reBindAgent(app.getAppId(),ips);
if(!flag){
flag=true;
}
}else{
LOG.error("url return data is empty,app:"+app.getInstruct()+",url:"+app.getBindUrl());
}
}catch (Exception e){
LOG.error("update app bind agent exception,app:"+app.getInstruct()+",url:"+app.getBindUrl()+",msg:"+ ExceptionUtil.getStackTraceAsString(e));
}
}
}
//如果重新绑定数据成功,则通知heartbeat
if(flag){
appServiceImpl.noticeHeartbeat();
}
}
UpdateBindDataTimer.java 文件源码
java
阅读 35
收藏 0
点赞 0
评论 0
项目:supervisor
作者:
评论列表
文章目录