@zhangning16
2018-01-30T08:58:20.000000Z
字数 2021
阅读 412
Node
UMP地址
目前接入的监控有:
1. URL存活状态。
2. 服务器性能监控
3. 接口的调用记录,成功率,响应时长。
4. 系统存活监控
监控介绍:URL存活状态监控可以用来帮助我们判断接口的健康程度,主要用来判断接口是否存活,以及每次的响应时间。
接入流程:
1.
2.
3.
4.
5. 创建成功之后,会出现相应的列表项,点击该项,会出现如图所示的列表,这样该接口就成功的接入了
监控介绍:可以查看cup使用率,内存使用率,以及网络指标,硬盘指标,容器指标等服务器相关的信息。
接入流程:
监控介绍:监控系统是否存活。
接入流程:无需手动接入,直接点击查看
监控介绍:包括接口的调用记录,成功率,响应时长等。
接入流程:
方法监控接入流程包括两部分:ump里的设置,node代码里的设置
整个流程很简单,按照ump要求的格式,输出日志就行。每条日志的格式如下:
{
"time":"该条日志产生的时间",
"key":"你再ump里面配置的key,每个接口都要配置一个独一无二的umpKey",
"hostname": "你的服务器ip",
"processState": "接口调用是否正常,0是正常,1是异常,用来计算接口可用率",
"elapsedTime": "这次请求的响应耗时"
}
step1. 第一步对Date函数进行扩展,转换成日志需要的时间 格式:yyyyMMddHHmmssSSS
Date.prototype.Format = function (fmt) { //author: tony
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"h+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1,(this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt;
};
step2. 写一个公用方法,使用时需要根据你的ip,修改这段代码里的‘hostname’字段。这个方法做了一件事:往日志文件('/export/home/tomcat/UMP-Monitor/logs/ceshiapitp.log')写记录,具体的umpkey,processState,elapsedTime在调用时以参数传入。注意:日志文件命名需要以tp.log结尾。
// 按照ump接入格式,进行写操作,参数依次是,umpKey, 接口是否成功,相应时间
const logUmp = (umpKey, isOK, useTime) => {
fs.appendFile(
'/export/home/tomcat/UMP-Monitor/logs/ceshiapitp.log',
`{"time":"${(new Date()).Format("yyyyMMddhhmmssS")}","key":"${umpKey}","hostname":"10.187.119.93","processState":"${isOK}","elapsedTime":"${useTime}"}\n`,
(err) => {
if (err) throw err;
console.log('The file has been saved!');
}
);
}
};
step3. 在需要接入监控的地方调用写日志方法(logUmp),比如这样:
logUmp('smart.assistant.api.getGoods.json',"0",response.elapsedTime);
step4.
这时候调用我们的接口,就会产生相应的ump日志,我们在ump里就可以看到可视化的数据图。这时候就说明我们的方法接入成功了!比如这样:
step5.
如果看不到数据,可以去http://lt-desktop.jd.com/#?ip=你的服务器ip,查看/export/home/tomcat/UMP-Monitor/logs/ceshiapitp.log这个ump日志文件,看是否写入数据成功.正确的日志格式如图: