pull/617/head
Mr Chen 10 months ago
parent 81bddd7eee
commit 2366a4e551
  1. 56
      plugins/simpleping/index.py
  2. 42
      plugins/simpleping/js/simpleping.js
  3. 4
      plugins/simpleping/simpleping_index.py

@ -265,40 +265,16 @@ def runLog():
return getServerDir() + '/data/log.pl'
def getRedisConfInfo():
conf = getServerDir() + '/redis.conf'
gets = [
{'name': 'bind', 'type': 2, 'ps': '绑定IP(修改绑定IP可能会存在安全隐患)','must_show':1},
{'name': 'port', 'type': 2, 'ps': '绑定端口','must_show':1},
{'name': 'timeout', 'type': 2, 'ps': '空闲链接超时时间,0表示不断开','must_show':1},
{'name': 'maxclients', 'type': 2, 'ps': '最大连接数','must_show':1},
{'name': 'databases', 'type': 2, 'ps': '数据库数量','must_show':1},
{'name': 'requirepass', 'type': 2, 'ps': 'redis密码,留空代表没有设置密码','must_show':1},
{'name': 'maxmemory', 'type': 2, 'ps': 'MB,最大使用内存,0表示不限制','must_show':1},
{'name': 'slaveof', 'type': 2, 'ps': '同步主库地址','must_show':0},
{'name': 'masterauth', 'type': 2, 'ps': '同步主库密码', 'must_show':0}
]
content = mw.readFile(conf)
result = []
for g in gets:
rep = "^(" + g['name'] + ')\s*([.0-9A-Za-z_& ~]+)'
tmp = re.search(rep, content, re.M)
if not tmp:
if g['must_show'] == 0:
continue
g['value'] = ''
result.append(g)
continue
g['value'] = tmp.groups()[1]
if g['name'] == 'maxmemory':
g['value'] = g['value'].strip("mb")
result.append(g)
return result
def ipList():
config = getServerDir() + '/conf/app.conf'
content = mw.readFile(config)
rep = 'ip\s*=\s*(.*)'
tmp = re.search(rep, content)
if not tmp:
return ''
ip = tmp.groups()[0]
ips = ip.split(",")
return mw.returnJson(True, 'OK', ips)
if __name__ == "__main__":
func = sys.argv[1]
@ -320,15 +296,7 @@ if __name__ == "__main__":
print(initdUinstall())
elif func == 'conf':
print(getConf())
elif func == 'run_log':
print(runLog())
elif func == 'get_redis_conf':
print(getRedisConf())
elif func == 'submit_redis_conf':
print(submitRedisConf())
elif func == 'config_tpl':
print(configTpl())
elif func == 'read_config_tpl':
print(readConfigTpl())
elif func == 'ip_list':
print(ipList())
else:
print('error')

@ -136,7 +136,8 @@ function pingDataGraphPosData(){
var dlen = chartPingData.length;
last_pos = chartPingData[dlen-1];
// console.log(start,end);
pingPostCallbakN('pingData', {'type':'pos', 'pos':last_pos['created_unix']}, function(data){
var cur_ip = $('select[name="ip_list"]').val();
pingPostCallbakN('pingData', {'type':'pos', 'pos':last_pos['created_unix'],"ip":cur_ip}, function(data){
var tmp_data = data.data;
for (x in tmp_data){
chartPingData.push(tmp_data[x]);
@ -167,8 +168,9 @@ function pingDataGraphData(day){
var end = Math.round(now);
}
var cur_ip = $('select[name="ip_list"]').val();
// console.log(start,end);
pingPostCallbak('pingData', {'type':'range', 'start':start, 'end':end}, function(data){
pingPostCallbak('pingData', {'type':'range', 'start':start, 'end':end, 'ip':cur_ip}, function(data){
chartPingData = data.data;
pingDataGraphRender();
@ -223,11 +225,33 @@ function pingDataGraphRender(){
]
};
chartPing.setOption(option);
}
function pingIpList(){
pingPost('ip_list', {}, function(data){
var rdata = $.parseJSON(data.data);
var ips = rdata.data;
var option = '';
option += '<option value="all">所有</option>';
for (var i = 0; i < ips.length; i++) {
option += '<option value="'+ips[i]+'">'+ips[i]+'</option>';
}
$('select[name="ip_list"]').html(option);
$('select[name="ip_list"]').change(function(){
chartPingData = [];
pingDataGraphData(0);
});
pingDataGraphData(0);
});
}
// console.log('pingDataGraph');
function pingDataGraph(){
var tpl = '\
<div class="col-xs-12 col-sm-12 col-md-12 pull-left pd0 view1">\
@ -236,7 +260,9 @@ function pingDataGraph(){
<div class="title c6 plr15">\
<h3 class="c-tit f16">连通性</h3>\
<div class="searcTime pull-right">\
<span class="tit">区间检索</span>\
<select class="bt-input-text gt" name="ip_list" style="height:28px;margin-left:0px;">\
<option value="all">所有</option>\
</select>\
<span class="gt" onclick="pingDataGraphData(1)">昨天</span>\
<span class="gt on" onclick="pingDataGraphData(0)">今天</span>\
<span class="gt" onclick="pingDataGraphData(7)">最近7天</span>\
@ -248,6 +274,11 @@ function pingDataGraph(){
</div>';
$('.soft-man-con').html(tpl);
$('.searcTime span').click(function(e){
$('.searcTime span').removeClass('on');
$(this).addClass('on');
});
chartPing = echarts.init(document.getElementById('pingview'));
var option = {
@ -303,7 +334,8 @@ function pingDataGraph(){
chartPing.resize();
});
pingDataGraphData(0);
pingIpList();
}

@ -31,6 +31,10 @@ def pingData(args = ()):
conn = conn.field(field)
data = []
atype = args['type']
ip = args['ip']
if ip != 'all':
conn = conn.where('ip=?',(ip,))
if atype == 'pos':
pos = args['pos']
data = conn.where('created_unix>?',(pos,)).limit("3000").select()

Loading…
Cancel
Save