diff --git a/gloam/WebRoot/WEB-INF/.gitignore b/gloam/WebRoot/WEB-INF/.gitignore
new file mode 100644
index 0000000..840e7d3
--- /dev/null
+++ b/gloam/WebRoot/WEB-INF/.gitignore
@@ -0,0 +1 @@
+/classes/
diff --git a/gloam/WebRoot/i18n/globalMessages_en_US.properties b/gloam/WebRoot/i18n/globalMessages_en_US.properties
index e650854..9856ad9 100644
--- a/gloam/WebRoot/i18n/globalMessages_en_US.properties
+++ b/gloam/WebRoot/i18n/globalMessages_en_US.properties
@@ -7185,9 +7185,9 @@ server.CommonService.exception5=VARCHAR2 data format error!
server.CommonService.errorInfo17=The table field set information parsing failed
server.CommonService.errorInfo18= field value
server.CommonService.errorInfo19=Error occurred; exception data line
-server.CommonService.dsinfo1=$@$Port
-server.CommonService.dsinfo1,exception=exception (configuration status does not match actual status)
-server.CommonService.dsinfo2=$@$Port
+server.CommonService.dsinfo1=\\$@\\$Port
+server.CommonService.dsinfo1.exception=exception (configuration status does not match actual status)
+server.CommonService.dsinfo2=\\$@\\$Port
server.CommonService.dsinfo2.exception=exception (traffic 0)
server.CommonService.for= is
server.CommonService.policyLevel=Alarm level
diff --git a/gloam/WebRoot/i18n/globalMessages_zh_CN.properties b/gloam/WebRoot/i18n/globalMessages_zh_CN.properties
index 1beb700..5997166 100644
--- a/gloam/WebRoot/i18n/globalMessages_zh_CN.properties
+++ b/gloam/WebRoot/i18n/globalMessages_zh_CN.properties
@@ -7198,9 +7198,9 @@ server.CommonService.exception5=VARCHAR2数据格式错误!
server.CommonService.errorInfo17=表字段集合信息解析失败
server.CommonService.errorInfo18=字段取值
server.CommonService.errorInfo19=发生错误;异常数据行
-server.CommonService.dsinfo1=$@$端口
-server.CommonService.dsinfo1,exception=异常(配置状态与实际状态不符)
-server.CommonService.dsinfo2=$@$端口
+server.CommonService.dsinfo1=\\$@\\$端口
+server.CommonService.dsinfo1.exception=异常(配置状态与实际状态不符)
+server.CommonService.dsinfo2=\\$@\\$端口
server.CommonService.dsinfo2.exception=异常(流量为0)
server.CommonService.for=为
server.CommonService.policyLevel=报警级别
diff --git a/gloam/WebRoot/login.html b/gloam/WebRoot/login.html
index 9eaedb3..142eb3d 100644
--- a/gloam/WebRoot/login.html
+++ b/gloam/WebRoot/login.html
@@ -118,7 +118,7 @@
#else
#set(style="")
#end
- #--
#(nameMsg)
--#
+ #--#(nameMsg)
--#
@@ -129,7 +129,7 @@
#else
#set(style="")
#end
- #--#(passwordMsg)
--#
+ #--#(passwordMsg)
--#
diff --git a/gloam/WebRoot/main.html b/gloam/WebRoot/main.html
index c813e04..ca9904b 100644
--- a/gloam/WebRoot/main.html
+++ b/gloam/WebRoot/main.html
@@ -63,10 +63,8 @@
class="halflings-icon white wrench"> -->
#if(_locale=='zh_CN')
简体中文
- #else if(_locale=='en_US')
+ #else
English
- #else
-
#end
diff --git a/gloam/conf/collector/config b/gloam/conf/collector/config
new file mode 100644
index 0000000..e90131d
--- /dev/null
+++ b/gloam/conf/collector/config
@@ -0,0 +1,13 @@
+#Tue Sep 18 18:40:12 CST 2018
+#ip{id}=ip,user,pwd,name,ethname,sort,isMaster
+ip1=,root,111111,CPU-SLED1,eth4,1,1
+#ip2=,root,111111,CPU-SLED2,eth4,2,0
+#ip3=,root,111111,CPU-SLED3,eth4,3,0
+#ip4=,root,111111,CPU-SLED4,eth4,4,0
+src_dir=/home/ceiec/oam/collector
+dest_dir=/home/ceiec/oam/collector
+cpu="cpu_cpu.cfg"
+disk="disk_disk.cfg"
+mem="memory_memory.cfg"
+net="net_net.cfg"
+sys="systeminfo_servicessysinfo.cfg"
diff --git a/gloam/conf/collector/configs/cpu_cpu.cfg b/gloam/conf/collector/configs/cpu_cpu.cfg
new file mode 100644
index 0000000..5e1d23e
--- /dev/null
+++ b/gloam/conf/collector/configs/cpu_cpu.cfg
@@ -0,0 +1,9 @@
+pubInfo=1,1,cpu,cpu
+checkState=1
+checkGap=5
+checkOutTime=0
+checkMaxTimes=3
+planCheckTime=0
+uploadGap=0
+dataFileDir=/home/ceiec/nms/nmsdata/nc_data/incoming/cpu_cpu
+police=
diff --git a/gloam/conf/collector/configs/disk_disk.cfg b/gloam/conf/collector/configs/disk_disk.cfg
new file mode 100644
index 0000000..1b355c0
--- /dev/null
+++ b/gloam/conf/collector/configs/disk_disk.cfg
@@ -0,0 +1,9 @@
+pubInfo=1,3,disk,disk
+checkState=1
+checkGap=5
+checkOutTime=0
+checkMaxTimes=3
+planCheckTime=0
+uploadGap=0
+dataFileDir=/home/ceiec/nms/nmsdata/nc_data/incoming/disk_disk
+police=
diff --git a/gloam/conf/collector/configs/memory_memory.cfg b/gloam/conf/collector/configs/memory_memory.cfg
new file mode 100644
index 0000000..71a9641
--- /dev/null
+++ b/gloam/conf/collector/configs/memory_memory.cfg
@@ -0,0 +1,9 @@
+pubInfo=1,2,memory,memory
+checkState=1
+checkGap=5
+checkOutTime=0
+checkMaxTimes=3
+planCheckTime=0
+uploadGap=0
+dataFileDir=/home/ceiec/nms/nmsdata/nc_data/incoming/memory_memory
+police=
diff --git a/gloam/conf/collector/configs/net_net.cfg b/gloam/conf/collector/configs/net_net.cfg
new file mode 100644
index 0000000..887b03d
--- /dev/null
+++ b/gloam/conf/collector/configs/net_net.cfg
@@ -0,0 +1,9 @@
+pubInfo=1,4,net,net
+checkState=1
+checkGap=5
+checkOutTime=0
+checkMaxTimes=3
+planCheckTime=0
+uploadGap=0
+dataFileDir=/home/ceiec/nms/nmsdata/nc_data/incoming/net_net
+police=
diff --git a/gloam/conf/collector/configs/systeminfo_servicessysinfo.cfg b/gloam/conf/collector/configs/systeminfo_servicessysinfo.cfg
new file mode 100644
index 0000000..68931fc
--- /dev/null
+++ b/gloam/conf/collector/configs/systeminfo_servicessysinfo.cfg
@@ -0,0 +1,9 @@
+pubInfo=1,0,systeminfo,servicessysinfo
+checkState=1
+checkGap=15
+checkOutTime=0
+checkMaxTimes=3
+planCheckTime=0
+uploadGap=0
+dataFileDir=/home/ceiec/nms/nmsdata/nc_data/incoming/systeminfo_servicessysinfo
+police=
diff --git a/gloam/conf/collector/device_config b/gloam/conf/collector/device_config
new file mode 100644
index 0000000..5106aaa
--- /dev/null
+++ b/gloam/conf/collector/device_config
@@ -0,0 +1,231 @@
+#!/usr/bin/env python
+# -*- coding: UTF-8 -*-
+# created by zhangbin
+from sys import argv
+import json
+import os
+from pprint import pprint
+import shutil
+
+def update_route(data):
+ list = []
+ route_path = '/etc/sysconfig/static-routes'
+ requestOldParam = 'any net ' + data['destination_ip_old'] + ' netmask ' + data['ip_mask_old'] + ' gw ' + data['gateway_old'] + ' ' + \
+ data['interface']
+ result = os.system(
+ 'route add -net ' + data['destination_ip'] + ' netmask ' + data['ip_mask'] + ' gw ' + data['gateway'] + ' ' +
+ data['interface'])
+ result2 = os.system(
+ 'route del -net ' + data['destination_ip_old'] + ' netmask ' + data['ip_mask_old'] + ' gw ' + data['gateway_old'] + ' ' +
+ data['interface'])
+ # ��������쳣����ֹ����
+ if (result != 0):
+ print(result)
+ return
+ if (result2 != 0):
+ print(result)
+ return
+ # �������ļ����·����Ϣ
+ with open(route_path, 'r+') as f_route:
+ lines = f_route.readlines()
+ for line in reversed(lines):
+ if (requestOldParam in line):
+ list.append('any net ' + data['destination_ip'] + ' netmask ' + data['ip_mask'] + ' gw ' + data['gateway'] + ' ' + \
+ data['interface'] + '\n')
+ else:
+ list.append(line)
+ f_route.seek(0)
+ f_route.truncate()
+ f_route.writelines(list)
+
+
+def new_route(data):
+ # �����·��
+ result = os.system(
+ 'route add -net ' + data['destination_ip'] + ' netmask ' + data['ip_mask'] + ' gw ' + data['gateway'] +' '+data['interface'])
+ # ��������쳣����ֹ����
+ if (result != 0):
+ print(result)
+ return
+ route_path = '/etc/sysconfig/static-routes'
+ # ����·����Ϣ��ӵ��ļ���
+ result = os.path.exists(route_path)
+ if (result == False):
+ with open(route_path, 'w') as f:
+ f.close()
+ with open(route_path, 'r+') as f:
+ strData = 'any net ' + data['destination_ip'] + ' netmask ' + data['ip_mask'] + ' gw ' + data['gateway'] + ' ' + \
+ data['interface']
+ f.seek(0, 2)
+ f.write('\n' + strData)
+
+
+def remove_route(data):
+ #ɾ��·����Ϣ
+ route_path = '/etc/sysconfig/static-routes'
+ list = []
+ requestParam='any net ' + data['destination_ip'] + ' netmask ' + data['ip_mask'] + ' gw ' + data['gateway'] + ' ' + data['interface']
+ result = os.system(
+ 'route del -net ' + data['destination_ip'] + ' netmask ' + data['ip_mask'] + ' gw ' + data['gateway'] + ' ' +
+ data['interface'])
+ # ��������쳣����ֹ����
+ if (result != 0):
+ print(result)
+ return
+ with open(route_path, 'r+')as f_route:
+ lines = f_route.readlines()
+ for line in lines:
+ if (not requestParam in line):
+ list.append(line)
+ f_route.seek(0)
+ f_route.truncate()
+ f_route.writelines(list)
+
+
+# ����ת��
+def exchange_maskint(mask_int):
+ bin_arr = ['0' for i in range(32)]
+ for i in range(mask_int):
+ bin_arr[i] = '1'
+ tmpmask = [''.join(bin_arr[i * 8:i * 8 + 8]) for i in range(4)]
+ tmpmask = [str(int(tmpstr, 2)) for tmpstr in tmpmask]
+ return '.'.join(tmpmask)
+
+
+# ��ȡ����·�ɵ���Ϣ
+def query_route():
+ path = '/etc/sysconfig/static-routes'
+ list = []
+ if(os.path.exists(path)):
+ with open(path, 'a+') as f:
+ content=f.readlines()
+ for i in content:
+ if(not i.strip('\n')==''):
+ data=i.split(' ')
+ result = {}
+ result['destination_ip'] = data[2]
+ result['ip_mask'] = data[4]
+ result['gateway'] = data[6]
+ result['r_interface'] = data[7]
+ if(result):
+ list.append(result)
+ return list
+
+
+# ��ȡ����·�ɵ���Ϣ
+def query_single_route(data): # ����洢��list
+ path = '/etc/sysconfig/network-scripts/route-'
+ list = []
+ with open(path + data, 'a+') as f:
+ content = f.readline()
+ a = content.split()
+ b = a[0].split('/')
+ result = {}
+ result['destination_ip'] = b[0]
+ result['ip_mask'] = exchange_maskint(int(b[1]))
+ result['gateway'] = a[2]
+ result['r_interface'] = a[4]
+ if(result):
+ list.append(result)
+ return list
+
+
+# ��ȡ�������õ���Ϣ
+def query_all_config():
+ path = '/etc/sysconfig/network-scripts/'
+ list = []
+ for file in os.listdir(path):
+ if ('ifcfg-e' in file and not('.' in file)):
+ with open(path + file, 'a+') as f:
+ result = {}
+ content = f.readline()
+ while (content.strip()):
+ if (not (content.strip().startswith('#'))):
+ res = content.split('=')
+ result[res[0]] = res[1].rstrip('\n').rstrip()
+ content = f.readline()
+ if(result):
+ if('IPADDR' in result.keys()):
+ if(not result['IPADDR'].strip()==''):
+ list.append(result)
+ return list
+'''
+def query_all_config():
+ networknames=get_networkName()
+ path = '/etc/sysconfig/network-scripts/ifcfg-'
+ list = []
+ for networkname in networknames:
+ with open(path + networkname, 'a+') as f:
+ result = {}
+ content = f.readline()
+ while (content):
+ res = content.split('=')
+ result[res[0]] = res[1].rstrip('\n').rstrip()
+ content = f.readline()
+ list.append(result)
+ return list
+'''
+#��ȡ������������
+def get_networkName():
+ result = os.popen("ifconfig | awk '/^[a-z]/{print $1}'").readlines()
+ list = []
+ for i in result:
+ if (i.strip("\n") == 'lo'):
+ break
+ list.append(i.strip("\n"))
+ return list
+
+# ��������Ϣ
+def modify_config(data):
+ path = '/etc/sysconfig/network-scripts/'
+ path2 = '/tmp/'
+ # list��ΪN������
+ list = data['request']
+ for i in range(len(list)):
+ dic = {}
+ if (not (':' in list[i]['DEVICE'])):
+ with open(path + 'ifcfg-' + list[i]['DEVICE'], 'r+') as f:
+ for line in f:
+ (key, value) = line.strip().split('=')
+ dic[key] = value
+ dic['HWADDR'] = list[i]['HWADDR']
+ dic['NETMASK'] = list[i]['NETMASK']
+ dic['GATEWAY'] = list[i]['GATEWAY']
+ dic['IPADDR'] = list[i]['IPADDR']
+ list2 = []
+ for key in dic:
+ list2.append(key + '=' + dic[key] + '\n')
+ with open(path2 + 'ifcfg-' + list[i]['DEVICE'], 'w+') as f2:
+ f2.writelines(list2)
+
+ if (os.path.exists(path + 'ifcfg-' + list[i]['DEVICE'])):
+ os.remove(path + 'ifcfg-' + list[i]['DEVICE'])
+ shutil.move(path2 + 'ifcfg-' + list[i]['DEVICE'], path)
+ # ��������Ϣ�� ��������
+ os.system('service network restart')
+
+
+if __name__ == '__main__':
+ path_manage = '/etc/sysconfig/network-scripts/ifcfg-unknown2'
+ data = json.loads(argv[1])[0]
+ if data['type'] == '1':
+ list=get_networkName()
+ if(list):
+ print(json.dumps(list))
+ elif data['type'] == '2':
+ update_route(data)
+ elif data['type'] == '3':
+ remove_route(data)
+ elif data['type'] == '4':
+ new_route(data)
+ elif data['type'] == '5':
+ list = query_route()
+ if(list):
+ print(json.dumps(list))
+ elif data['type'] == '6':
+ modify_config(data)
+ elif data['type'] == '7':
+ list = query_all_config()
+ if(list):
+ print(json.dumps(list))
+ exit(0)
diff --git a/gloam/conf/collector/expect_scp_get b/gloam/conf/collector/expect_scp_get
new file mode 100644
index 0000000..428a58d
--- /dev/null
+++ b/gloam/conf/collector/expect_scp_get
@@ -0,0 +1,20 @@
+#!/usr/bin/expect
+set timeout 3600
+set password [lindex $argv 0]
+set src_file [lindex $argv 1]
+set dest_file [lindex $argv 2]
+
+spawn scp -r $src_file $dest_file
+expect {
+ "(yes/no)?" {
+ send "yes\n"
+ expect "*assword:" { send "$password\n"}
+ }
+ "*assword:" {
+ send "$password\n"
+ }
+ "*csv" {
+
+ }
+}
+expect eof
diff --git a/gloam/conf/collector/expect_scp_push b/gloam/conf/collector/expect_scp_push
new file mode 100644
index 0000000..83ef181
--- /dev/null
+++ b/gloam/conf/collector/expect_scp_push
@@ -0,0 +1,19 @@
+#!/usr/bin/expect
+set timeout 3600
+set password [lindex $argv 0]
+set src_file [lindex $argv 1]
+set dest_file [lindex $argv 2]
+
+spawn scp -r $src_file $dest_file
+expect {
+ "(yes/no)?" {
+ send "yes\n"
+ expect "*assword:" { send "$password\n"}
+ }
+ "*assword:" {
+ send "$password\n"
+ }
+ "*csv" {
+
+ }
+}
diff --git a/gloam/conf/collector/expect_ssh b/gloam/conf/collector/expect_ssh
new file mode 100644
index 0000000..b0f5055
--- /dev/null
+++ b/gloam/conf/collector/expect_ssh
@@ -0,0 +1,16 @@
+#!/usr/bin/expect
+set timeout 3600
+set host [lindex $argv 0]
+set username [lindex $argv 1]
+set password [lindex $argv 2]
+set command [lindex $argv 3]
+
+spawn ssh $username@$host $command
+expect {
+ "(yes/no)?" {
+ send "yes\n"
+ expect "*assword:" { send "$password\n"}
+ }
+ "*assword:" { send "$password\n" }
+
+}
diff --git a/gloam/conf/collector/getSingleMacInfo.sh b/gloam/conf/collector/getSingleMacInfo.sh
new file mode 100644
index 0000000..78f6f04
--- /dev/null
+++ b/gloam/conf/collector/getSingleMacInfo.sh
@@ -0,0 +1,647 @@
+#!/bin/bash
+
+source /etc/profile
+LANG="en_US.UTF-8"
+
+basePath=$(cd `dirname $0`; pwd)
+date=`date +%Y%m%d%H%M%S`
+d=`date "+%Y-%m-%d %H:%M:%S"` #temp column
+t=`date -d "$d" +%s` #temp column
+t2=`date "+%N" | awk '{print int($0)}'`
+dateStamp=$((t*1000+t2/1000000)) #current time stamp
+sep=\$@\$
+
+cd ${basePath}
+
+if [ ! -d macInfo ]
+ then
+ mkdir macInfo
+fi
+
+if [ ! -d result ]
+ then
+ mkdir result
+fi
+
+if [ ! -f firstTimeDate ]
+ then
+ touch firstTimeDate
+ echo ${dateStamp} > firstTimeDate
+ firstTimeDate=${dateStamp}
+ else
+ firstTimeDate=`cat firstTimeDate`
+fi
+
+# config info from config file
+OLD_IFS="$IFS"
+IFS=","
+
+cpu_pubInfo=`cat configs/cpu_cpu.cfg | grep pubInfo | awk -F'=' '{print $2}'`
+cpu_checkState=`cat configs/cpu_cpu.cfg | grep checkState | awk -F'=' '{print $2}'`
+cpu_checkGap=`cat configs/cpu_cpu.cfg | grep checkGap | awk -F'=' '{print $2}'`
+cpu_checkOutTime=`cat configs/cpu_cpu.cfg | grep checkOutTime | awk -F'=' '{print $2}'`
+cpu_checkMaxTimes=`cat configs/cpu_cpu.cfg | grep checkMaxTimes | awk -F'=' '{print $2}'`
+cpu_planCheckTime=`cat configs/cpu_cpu.cfg | grep planCheckTime | awk -F'=' '{print $2}'`
+cpu_uploadGap=`cat configs/cpu_cpu.cfg | grep uploadGap | awk -F'=' '{print $2}'`
+cpu_dataFileDir=`cat configs/cpu_cpu.cfg | grep dataFileDir | awk -F'=' '{print $2}'`
+cpu_polices=`cat configs/cpu_cpu.cfg | grep police | awk -F'=' '{print $2}'`
+cpu_polices_arr=($cpu_polices)
+cpu_police_flag=0
+cpu_nextDateStamp=$((cpu_checkGap*60*1000+dateStamp))
+mem_pubInfo=`cat configs/memory_memory.cfg | grep pubInfo | awk -F'=' '{print $2}'`
+mem_checkState=`cat configs/memory_memory.cfg | grep checkState | awk -F'=' '{print $2}'`
+mem_checkGap=`cat configs/memory_memory.cfg | grep checkGap | awk -F'=' '{print $2}'`
+mem_checkOutTime=`cat configs/memory_memory.cfg | grep checkOutTime | awk -F'=' '{print $2}'`
+mem_checkMaxTimes=`cat configs/memory_memory.cfg | grep checkMaxTimes | awk -F'=' '{print $2}'`
+mem_planCheckTime=`cat configs/memory_memory.cfg | grep planCheckTime | awk -F'=' '{print $2}'`
+mem_uploadGap=`cat configs/memory_memory.cfg | grep uploadGap | awk -F'=' '{print $2}'`
+mem_dataFileDir=`cat configs/memory_memory.cfg | grep dataFileDir | awk -F'=' '{print $2}'`
+mem_polices=`cat configs/memory_memory.cfg | grep police | awk -F'=' '{print $2}'`
+mem_polices_arr=($mem_polices)
+mem_police_flag=0
+mem_nextDateStamp=$((mem_checkGap*60*1000+dateStamp))
+disk_pubInfo=`cat configs/disk_disk.cfg | grep pubInfo | awk -F'=' '{print $2}'`
+disk_checkState=`cat configs/disk_disk.cfg | grep checkState | awk -F'=' '{print $2}'`
+disk_checkGap=`cat configs/disk_disk.cfg | grep checkGap | awk -F'=' '{print $2}'`
+disk_checkOutTime=`cat configs/disk_disk.cfg | grep checkOutTime | awk -F'=' '{print $2}'`
+disk_checkMaxTimes=`cat configs/disk_disk.cfg | grep checkMaxTimes | awk -F'=' '{print $2}'`
+disk_planCheckTime=`cat configs/disk_disk.cfg | grep planCheckTime | awk -F'=' '{print $2}'`
+disk_uploadGap=`cat configs/disk_disk.cfg | grep uploadGap | awk -F'=' '{print $2}'`
+disk_dataFileDir=`cat configs/disk_disk.cfg | grep dataFileDir | awk -F'=' '{print $2}'`
+disk_polices=`cat configs/disk_disk.cfg | grep police | awk -F'=' '{print $2}'`
+disk_polices_arr=($disk_polices)
+disk_police_flag=0
+disk_nextDateStamp=$((disk_checkGap*60*1000+dateStamp))
+net_pubInfo=`cat configs/net_net.cfg | grep pubInfo | awk -F'=' '{print $2}'`
+net_checkState=`cat configs/net_net.cfg | grep checkState | awk -F'=' '{print $2}'`
+net_checkGap=`cat configs/net_net.cfg | grep checkGap | awk -F'=' '{print $2}'`
+net_checkOutTime=`cat configs/net_net.cfg | grep checkOutTime | awk -F'=' '{print $2}'`
+net_checkMaxTimes=`cat configs/net_net.cfg | grep checkMaxTimes | awk -F'=' '{print $2}'`
+net_planCheckTime=`cat configs/net_net.cfg | grep planCheckTime | awk -F'=' '{print $2}'`
+net_uploadGap=`cat configs/net_net.cfg | grep uploadGap | awk -F'=' '{print $2}'`
+net_dataFileDir=`cat configs/net_net.cfg | grep dataFileDir | awk -F'=' '{print $2}'`
+net_polices=`cat configs/net_net.cfg | grep police | awk -F'=' '{print $2}'`
+net_polices_arr=($net_polices)
+net_police_flag=0
+net_nextDateStamp=$((net_checkGap*60*1000+dateStamp))
+sys_pubInfo=`cat configs/systeminfo_servicessysinfo.cfg | grep pubInfo | awk -F'=' '{print $2}'`
+sys_checkState=`cat configs/systeminfo_servicessysinfo.cfg | grep checkState | awk -F'=' '{print $2}'`
+sys_checkGap=`cat configs/systeminfo_servicessysinfo.cfg | grep checkGap | awk -F'=' '{print $2}'`
+sys_checkOutTime=`cat configs/systeminfo_servicessysinfo.cfg | grep checkOutTime | awk -F'=' '{print $2}'`
+sys_checkMaxTimes=`cat configs/systeminfo_servicessysinfo.cfg | grep checkMaxTimes | awk -F'=' '{print $2}'`
+sys_planCheckTime=`cat configs/systeminfo_servicessysinfo.cfg | grep planCheckTime | awk -F'=' '{print $2}'`
+sys_uploadGap=`cat configs/systeminfo_servicessysinfo.cfg | grep uploadGap | awk -F'=' '{print $2}'`
+sys_dataFileDir=`cat configs/systeminfo_servicessysinfo.cfg | grep dataFileDir | awk -F'=' '{print $2}'`
+sys_polices=`cat configs/systeminfo_servicessysinfo.cfg | grep police | awk -F'=' '{print $2}'`
+sys_polices_arr=($sys_polices)
+sys_police_flag=0
+sys_nextDateStamp=$((sys_checkGap*60*1000+dateStamp))
+
+IFS="$OLD_IFS"
+
+## begin content weaving ##
+# task info
+cpuResult_taskInfo=${cpu_pubInfo}","${firstTimeDate}","${cpu_checkOutTime}","${dateStamp}",1,"${cpu_nextDateStamp}","
+memResult_taskInfo=${mem_pubInfo}","${firstTimeDate}","${mem_checkOutTime}","${dateStamp}",1,"${mem_nextDateStamp}","
+diskResult_taskInfo=${disk_pubInfo}","${firstTimeDate}","${disk_checkOutTime}","${dateStamp}",1,"${disk_nextDateStamp}","
+netResult_taskInfo=${net_pubInfo}","${firstTimeDate}","${net_checkOutTime}","${dateStamp}",1,"${net_nextDateStamp}","
+sysResult_taskInfo=${sys_pubInfo}","${firstTimeDate}","${sys_checkOutTime}","${dateStamp}",1,"${sys_nextDateStamp}",1,"
+
+cpuResult_coreNum=0
+disk_total_num=0
+net_total_num=0
+sys_net_total_num=0
+diskResult_baseInfo="\""
+memResult_baseInfo="\""
+netResult_baseInfo="\""
+sysResult_baseInfo="\""
+# result file
+
+cpuResult=result/cpuResult_${date}
+memResult=result/memResult_${date}
+diskResult=result/diskResult_${date}
+netResult=result/netResult_${date}
+sysResult=result/sysResult_${date}
+
+
+function getDetail {
+ cpuInfo=macInfo/$1"_cpuInfo_"${date}
+ memInfo=macInfo/$1"_memInfo_"${date}
+ diskInfo=macInfo/$1"_diskInfo_"${date}
+ netInfo=macInfo/$1"_netInfo_"${date}
+ sysInfo=macInfo/$1"_sysInfo_"${date}
+ #runtimes=macInfo/$1"_runtimes_"${date}
+
+ __t=`sar -P ALL 1 1`
+ echo "${__t}" > ${cpuInfo}
+ __t=`cat /proc/cpuinfo | grep MHz`
+ echo "${__t}" > ${cpuInfo}2
+ __t=`free|awk 'NR>1{print}'`
+ echo "${__t}" > ${memInfo}
+ __t=`df -l|grep -v tmpfs|awk 'NR>1{print}'`
+ echo "${__t}" > ${diskInfo}
+ __t=`/etc/init.d/network status|awk 'NR==4{print}'|sed 's/lo//g' && cat /proc/net/dev|awk 'NR>2{print}'|awk '!/^( lo)/'`
+ echo "${__t}" > ${netInfo}
+ sleep 5s
+ __t=`/etc/init.d/network status|awk 'NR==4{print}'|sed 's/lo//g' && cat /proc/net/dev|awk 'NR>2{print}'|awk '!/^( lo)/'`
+ echo "${__t}" > ${netInfo}2
+ #__t=`cat /proc/uptime | awk '{print \$"1"}'`
+ #echo "${__t}" > ${runtimes}
+
+ dos2unix ${cpuInfo} > /dev/null 2>&1
+ dos2unix ${cpuInfo}2 > /dev/null 2>&1
+ dos2unix ${memInfo} > /dev/null 2>&1
+ dos2unix ${diskInfo} > /dev/null 2>&1
+ dos2unix ${diskInfo} > /dev/null 2>&1
+ #dos2unix ${runtimes} > /dev/null 2>&1
+
+ # cpu info
+ cpu_t=`awk -F "(" '{print $3}' ${cpuInfo}` # temp column
+ cpu_coreNum=${cpu_t:0:1}
+ cpuResult_coreNum=$((cpuResult_coreNum+cpu_coreNum))
+ cpu_totalMHz=`awk '{total+=$4}END{print total}' ${cpuInfo}2`
+ cpu_averMHz=`echo "scale=2;$cpu_totalMHz/$cpu_coreNum"|bc|awk '{printf "%.2f",$0}'`
+ cpu_idle_total=`awk 'NR==4{print $9}' ${cpuInfo}`
+ cpu_shiyonglv=`echo "100-$cpu_idle_total"|bc|awk '{printf "%.2f",$0}'`
+ cpuResult_baseInfo=${cpuResult_baseInfo}${sep}"cpu i18n_client.SystemInfo.mhz_n81i "${cpu_averMHz}"MHz,i18n_client.SystemInfo.shiyonglv_n81i "${cpu_shiyonglv}"%; "
+ getCpuBase2 ${cpuInfo} ${cpuInfo}2
+ getCpuDetail ${cpuInfo} ${cpuInfo}2
+
+ # mem info
+ swap_total_t=`cat ${memInfo}|grep '^S'|awk '{print $2}'`
+ swap_total=`echo "scale=2;${swap_total_t}/1024/1024"|bc|awk '{printf "%.2f",$0}'`
+ swap_free_t=`cat ${memInfo}|grep '^S'|awk '{print $4}'`
+ swap_free=`echo "scale=2;${swap_free_t}/1024/1024"|bc|awk '{printf "%.2f",$0}'`
+ mem_total_t=`awk 'NR==1{print $2}' ${memInfo}`
+ mem_total=`echo "scale=2;${mem_total_t}/1024/1024"|bc|awk '{printf "%.2f",$0}'`
+ mem_used_t=`awk 'NR==1{print $3}' ${memInfo}`
+ mem_used=`echo "scale=2;${mem_used_t}/1024/1024"|bc|awk '{printf "%.2f",$0}'`
+ mem_free=`echo "${mem_total}-${mem_used}"|bc|awk '{printf "%.2f",$0}'`
+ mem_shiyonglv=`echo "scale=2;${mem_used}/${mem_total}*100.00"|bc|awk '{printf "%.2f",$0}'`
+ if [[ "${memResult_baseInfo}" != "\"" ]];then
+ memResult_baseInfo="${memResult_baseInfo}"${sep}
+ fi
+ memResult_baseInfo="${memResult_baseInfo}""i18n_client.SystemInfo.memerySize_n81i: "${mem_total}"G, i18n_client.SystemInfo.currentUsed_n81i:"${mem_used}"G, i18n_client.SystemInfo.spaceRemain_n81i:"${mem_free}"G, i18n_client.SystemInfo.shiyonglv_n81i:"${mem_shiyonglv}"% "
+ mem_detail_nopolice=${swap_total}","${swap_free}","${mem_total}","${mem_used}","${mem_free}","${mem_shiyonglv}","$'\n'
+ OLD_IFS="$IFS"
+ IFS=","
+ mem_detail_nopolice_arr=(${mem_detail_nopolice})
+ IFS=$OLD_IFS
+ # police
+ if [ ! -z $mem_polices ]
+ then
+ mem_police_most_level=0
+ mem_police_flag_t=0 #临时变量
+ mem_baseInfo_police=""
+ for((j=0;j<${#mem_polices_arr[@]};j++));do
+ mem_detail_police_t=""
+ OLD_IFS="$IFS"
+ IFS="|"
+ mem_police_arr=(${mem_polices_arr[$j]})
+ IFS=$OLD_IFS
+
+ if (($(echo "${mem_detail_nopolice_arr[((${mem_police_arr[0]}-1))]} ${mem_police_arr[1]} ${mem_police_arr[2]}"|bc) == 1))
+ then #触发告警
+ mem_detail_police_t=${mem_police_arr[0]}","${mem_police_arr[3]}","${mem_police_arr[2]}","
+ mem_police_flag=1
+ mem_police_flag_t=1
+ if ((${mem_police_arr[3]} > ${mem_police_most_level}))
+ then
+ mem_police_most_level=${mem_police_arr[3]}
+ mem_detail_police=$mem_detail_police_t
+ mem_baseInfo_police="【${mem_detail_nopolice_arr[0]}】"${mem_police_arr[4]}${mem_detail_nopolice_arr[((${mem_police_arr[0]}-1))]}"% i18n_client.GetInfoRun.abnormal_n81i"
+ fi
+ elif [ $mem_police_flag_t -eq 0 ]&&[ -z "${mem_baseInfo_police}" ];then
+ mem_detail_police="\"\",,,"
+ mem_baseInfo_police="【${mem_detail_nopolice_arr[0]}】"${mem_police_arr[4]}${mem_detail_nopolice_arr[((${mem_police_arr[0]}-1))]}" i18n_client.GetInfoRun.normal_n81i"
+ fi
+ done
+ memResult_baseInfo_police=${memResult_baseInfo_police}${mem_baseInfo_police}
+ else
+ mem_detail_police="\"\",,,"
+ fi
+ memResult_detail=${memResult_detail}${mem_detail_police}${mem_detail_nopolice}
+
+
+ #memResult_detail="${memResult_detail}""\"\",,,"${swap_total}","${swap_free}","${mem_total}","${mem_used}","${mem_free}","${mem_shiyonglv}","$'\n'
+
+ # disk info
+ disk_total_size=`awk '{total+=$2}END{print total}' ${diskInfo}` # Kb
+ disk_total_used_size=`awk '{total+=$3}END{print total}' ${diskInfo}`
+ disk_total_shiyonglv=`echo "scale=2;(${disk_total_used_size}*100)/${disk_total_size}"|bc|awk '{printf "%.2f",$0}'`
+ if [[ "${diskResult_baseInfo}" != "\"" ]];then
+ diskResult_baseInfo="${diskResult_baseInfo}"${sep}
+ fi
+ diskResult_baseInfo=${diskResult_baseInfo}"i18n_client.SystemInfo.diskSize_n81i:"`echo "scale=2;${disk_total_size}/1024/1024"|bc|awk '{printf "%.2f",$0}'`"G,i18n_client.SystemInfo.used2_n81i "${disk_total_shiyonglv}"% ;"
+ getDiskBase ${diskInfo}
+ getDiskDetail
+
+ # net info
+ net_avai_if_arr=($(awk 'NR==1{print $0}' ${netInfo}))
+ net_all_if_arr=($(awk 'NR>1{print}' ${netInfo} | awk -F ':' '{print $1 NR}'))
+ if_total_num=0
+ if_total_num=$((if_total_num+${#net_avai_if_arr[@]}))
+ getNetInfo
+
+ # sys info
+ sys_host_t=`awk 'NR==1{print $3}' ${cpuInfo}`
+ sys_host=${sys_host_t:1:${#sys_host_t}-1}
+ sys_version=`awk 'NR==1{print $2}' ${cpuInfo}`
+ if [[ "${sysResult_baseInfo}" != "\"" ]];then
+ sysResult_baseInfo="${sysResult_baseInfo}"${sep}
+ fi
+ sysResult_baseInfo=${sysResult_baseInfo}${index}"-"${sys_host}": "${sys_version}", "$cpu_coreNum"i18n_client.SystemInfo.message.core_n81i CPU, "${cpu_averMHz}"MHz, "${mem_total}"i18n_client.SystemInfo.message.memery_n81i, "`echo "scale=2;${disk_total_size}/1024/1024"|bc|awk '{printf "%.2f",$0}'`"i18n_client.SystemInfo.message.disk_n81i, "${#net_all_if_arr[@]}"i18n_client.SystemInfo.message.netcard_n81i"
+ getSysDetail
+ getSysDisk
+ getSysNet
+
+ # run times
+ #runtimes_t=`cat ${runtimes}`
+ #runtimesResult=${runtimesResult}${runtimes_t}" "
+}
+
+function getSysDetail {
+ sysResult_detail=${sysResult_detail}"\"\",,,"${index}"-"${sys_host}",\""${sys_version}"\","${cpu_coreNum}","${cpu_averMHz}","${mem_total}","${swap_total}","${disk_total_size}","${#net_all_if_arr[@]}","$'\n'
+}
+
+function getSysDisk {
+ for((i=0;i<${#disk_size_arr[@]};i++));do
+ sys_disk_size_t=`echo "scale=2;${disk_size_arr[$i]}/1024/1024"|bc|awk '{printf "%.2f",$0}'`
+ sysResult_disk=${sysResult_disk}${disk_moun_arr[$i]}","${sys_disk_size_t}","$'\n'
+ done
+}
+
+function getSysNet {
+ sys_net_gateway=`ip route show`
+ for((i=0;i<${#net_all_if_arr[@]};i++));do
+ sys_net_rowNum=$((${net_all_if_arr[$i]: -1}+1))
+ sys_net_if_name_t=`awk 'NR=="'${sys_net_rowNum}'"{print $1}' ${netInfo}`
+ sys_net_if_name=${sys_net_if_name_t%?}
+ sys_net_is_avai=`echo "${net_avai_if_arr[@]}" | grep -wq "${net_all_if_arr[$i]%?}" && echo "1" || echo "0"`
+ if [ "1" -eq "$sys_net_is_avai" ]
+ then
+ echo "#!/bin/bash"$'\n'"ethtool ${sys_net_if_name}" > netExec.sh
+ chmod 760 netExec.sh
+ sys_net_if_ethtoolResult=`./netExec.sh`
+
+ echo "#!/bin/bash"$'\n'"ifconfig ${sys_net_if_name}" > netExec.sh
+ sys_net_if_ifconfigResult=`./netExec.sh`
+ echo "#!/bin/bash"$'\n'"ip route show" > netExec.sh
+ sys_net_if_speed_t=`echo "${sys_net_if_ethtoolResult}"|grep "Speed:"|awk '{print $2}'`
+ if [ ${#sys_net_if_speed_t} -lt 1 ]
+ then
+ sys_net_if_speed=0
+ else
+ sys_net_if_speed=${sys_net_if_speed_t:0:${#sys_net_if_speed_t}-4}
+ fi
+ sys_net_if_ip=`echo "${sys_net_if_ifconfigResult}"|grep "inet "|awk '{print $2}'`
+ sys_net_if_mask=`echo "${sys_net_if_ifconfigResult}"|grep "inet "|awk '{print $4}'`
+ sys_net_if_gateway=`echo $sys_net_gateway|awk '{print $3}'`
+ sys_net_if_mac=`echo "${sys_net_if_ifconfigResult}"|grep "ether "|awk '{print $2}'`
+ sysResult_net=${sysResult_net}${sys_net_if_name}",Available,"${sys_net_if_speed}","${sys_net_if_ip}","${sys_net_if_mask}","${sys_net_if_gateway}","${sys_net_if_mac}","$'\n'
+ else
+ echo "#!/bin/bash"$'\n'"ethtool ${sys_net_if_name}" > netExec.sh
+ sys_net_if_ethtoolResult=`./netExec.sh`
+ echo "#!/bin/bash"$'\n'"ifconfig ${sys_net_if_name}" > netExec.sh
+ sys_net_if_ifconfigResult=`./netExec.sh`
+ sys_net_if_speed_t=`echo "${sys_net_if_ethtoolResult}"|grep "Speed:"|awk '{print $2}'`
+ if [ ${#sys_net_if_speed_t} -lt 1 ]
+ then
+ sys_net_if_speed=0
+ else
+ sys_net_if_speed=${sys_net_if_speed_t:0:${#sys_net_if_speed_t}-4}
+ fi
+ sys_net_if_mac=`echo "${sys_net_if_ifconfigResult}"|grep "ether "|awk '{print $2}'`
+ sysResult_net=${sysResult_net}${sys_net_if_name}",Unavailable,"${sys_net_if_speed}",0.0.0.0,0.0.0.0,0,0,0,0,"${sys_net_if_mac}","$'\n'
+
+ fi
+ done
+}
+
+function getCpuBase2 {
+ arr1=($(awk '/^[0-2]/{print $9}' $1|awk 'NR>2{print $0}'))
+ arr2=($(awk '{print $4}' $2))
+ for((i=0;i<${#arr1[@]};i++));do
+ cpu_t2=`bc <<<100-${arr1[$i]} |awk '{printf "%.2f",$0}'`
+ cpuResult_baseInfo=${cpuResult_baseInfo}${sep}"cpu-$i i18n_client.SystemInfo.mhz_n81i "${arr2[$i]}"MHz,i18n_client.SystemInfo.shiyonglv_n81i "${cpu_t2}"%; "
+ done
+}
+
+function getCpuDetail {
+ cpu_t3=`awk '/^[0-2]/{print $0}' $1|awk 'NR>1{print $0}'`
+
+ for((i=2;i<=`echo "${cpu_t3}"|awk 'END{print NR}'`;i++));do
+ cpu_row=`echo "${cpu_t3}"|awk 'NR=="'$i'"{print $0}'`
+ cpu_idle=`echo "${cpu_row}"|awk '{print $9}'`
+ cpu_shiyonglv_t=`bc <<<100-${cpu_idle} |awk '{printf "%.2f",$0}'`
+ cpu_detail_nopolice="cpu-$((i-2)),"`echo "${cpu_row}"|awk '{print $4}'`","`echo "${cpu_row}"|awk '{print $6}'`","`echo "${cpu_row}"|awk '{print $7}'`","`echo "${cpu_row}"|awk '{print $5}'`","`echo "${cpu_row}"|awk '{print $9}'`","${cpu_shiyonglv_t}","`awk 'NR=="'$((i-1))'"{print $4}' $2`$'\n'
+ # police
+ if [ ! -z $cpu_polices ]
+ then
+ OLD_IFS="$IFS"
+ IFS=","
+ cpu_detail_nopolice_arr=(${cpu_detail_nopolice})
+ IFS=$OLD_IFS
+ cpu_police_most_level=0
+ cpu_police_flag_t=0 #临时变量
+ cpu_baseInfo_police=""
+ for((j=0;j<${#cpu_polices_arr[@]};j++));do
+ cpu_detail_police_t=""
+ OLD_IFS="$IFS"
+ IFS="|"
+ cpu_police_arr=(${cpu_polices_arr[$j]})
+ IFS=$OLD_IFS
+
+ if (($(echo "${cpu_detail_nopolice_arr[((${cpu_police_arr[0]}-1))]} ${cpu_police_arr[1]} ${cpu_police_arr[2]}"|bc) == 1))
+ then #触发告警
+ cpu_detail_police_t=${cpu_police_arr[0]}","${cpu_police_arr[3]}","${cpu_police_arr[2]}","
+ cpu_police_flag=1
+ cpu_police_flag_t=1
+ if ((${cpu_police_arr[3]} > ${cpu_police_most_level}))
+ then
+ cpu_police_most_level=${cpu_police_arr[3]}
+ cpu_detail_police=$cpu_detail_police_t
+ cpu_baseInfo_police="【cpu-$((i-2))】"${cpu_police_arr[4]}${cpu_detail_nopolice_arr[((${cpu_police_arr[0]}-1))]}"% i18n_client.GetInfoRun.abnormal_n81i"
+ fi
+ elif [ $cpu_police_flag_t -eq 0 ]&&[ -z "${cpu_baseInfo_police}" ];then
+ cpu_detail_police="\"\",,,"
+ cpu_baseInfo_police="【cpu-$((i-2))】"${cpu_police_arr[4]}${cpu_detail_nopolice_arr[((${cpu_police_arr[0]}-1))]}"% i18n_client.GetInfoRun.normal_n81i"
+ fi
+ done
+ cpuResult_baseInfo_police=${cpuResult_baseInfo_police}${cpu_baseInfo_police}
+ else
+ cpu_detail_police="\"\",,,"
+ fi
+ cpuResult_detail=${cpuResult_detail}${cpu_detail_police}${cpu_detail_nopolice}
+ done
+ cpuResult_detail=${cpuResult_detail}"\"\",,,cpu,"`awk 'NR==4{print $4}' $1`","`awk 'NR==4{print $6}' $1`","`awk 'NR==4{print $7}' $1`","`awk 'NR==4{print $5}' $1`","`awk 'NR==4{print $9}' $1`","${cpu_shiyonglv}","${cpu_averMHz}$'\n'
+}
+
+function getDiskBase {
+ disk_size_arr=($(awk '{print $2}' $1))
+ disk_used_arr=($(awk '{print $3}' $1))
+ disk_avai_arr=($(awk '{print $4}' $1)) # available
+ disk_usep_arr=($(awk '{print $5}' $1))
+ disk_moun_arr=($(awk '{print $6}' $1)) # mount on
+
+ for((i=0;i<${#disk_size_arr[@]};i++));do
+ disk_size=`echo "scale=2;${disk_size_arr[$i]}/1024/1024"|bc|awk '{printf "%.2f",$0}'` # Gb
+ disk_used=`echo "scale=2;${disk_used_arr[$i]}/1024/1024"|bc|awk '{printf "%.2f",$0}'`
+ disk_avai=`echo "scale=2;${disk_avai_arr[$i]}/1024/1024"|bc|awk '{printf "%.2f",$0}'`
+ disk_usep=${disk_usep_arr[$i]}
+ disk_moun=${disk_moun_arr[$i]}
+
+ diskResult_baseInfo=${diskResult_baseInfo}${sep}"【"${disk_moun}"】i18n_client.SystemInfo.size_n81i "${disk_size}"G, i18n_client.SystemInfo.used1_n81i "${disk_used}"G, i18n_client.SystemInfo.spaceRemain_n81i "${disk_avai}"G, i18n_client.SystemInfo.shiyonglv_n81i "${disk_usep}" ; "
+ done
+}
+
+function getDiskDetail {
+ disk_total_num=`echo "${disk_total_num}+${#disk_size_arr[@]}"|bc`
+ for((i=0;i<${#disk_size_arr[@]};i++));do
+ disk_size=`echo "scale=2;${disk_size_arr[$i]}/1024/1024"|bc|awk '{printf "%.2f",$0}'` # Gb
+ disk_avai=`echo "scale=2;${disk_avai_arr[$i]}/1024/1024"|bc|awk '{printf "%.2f",$0}'`
+ disk_detail_nopolice=${disk_moun_arr[$i]}","${disk_size}","${disk_avai}","${disk_usep_arr[$i]%\%*}",0,"$'\n'
+ OLD_IFS=$IFS
+ IFS=","
+ disk_detail_nopolice_arr=(${disk_detail_nopolice})
+ IFS=$OLD_IFS
+
+ # police
+ if [ ! -z $disk_polices ]
+ then
+ disk_police_most_level=0
+ disk_police_flag_t=0 #临时变量
+ disk_baseInfo_police=""
+ for((j=0;j<${#disk_polices_arr[@]};j++));do
+ disk_detail_police_t=""
+ OLD_IFS="$IFS"
+ IFS="|"
+ disk_police_arr=(${disk_polices_arr[$j]})
+ IFS=$OLD_IFS
+
+ if (($(echo "${disk_detail_nopolice_arr[((${disk_police_arr[0]}-1))]} ${disk_police_arr[1]} ${disk_police_arr[2]}"|bc) == 1))
+ then #触发告警
+ disk_detail_police_t=${disk_police_arr[0]}","${disk_police_arr[3]}","${disk_police_arr[2]}","
+ disk_police_flag=1
+ disk_police_flag_t=1
+ if ((${disk_police_arr[3]} > ${disk_police_most_level}))
+ then
+ disk_police_most_level=${disk_police_arr[3]}
+ disk_detail_police=$disk_detail_police_t
+ disk_baseInfo_police="【${disk_detail_nopolice_arr[0]}】"${disk_police_arr[4]}${disk_detail_nopolice_arr[((${disk_police_arr[0]}-1))]}"% i18n_client.GetInfoRun.abnormal_n81i"
+ fi
+ elif [ $disk_police_flag_t -eq 0 ]&&[ -z "${disk_baseInfo_police}" ];then
+ disk_detail_police="\"\",,,"
+ disk_baseInfo_police="【${disk_detail_nopolice_arr[0]}】"${disk_police_arr[4]}${disk_detail_nopolice_arr[((${disk_police_arr[0]}-1))]}" i18n_client.GetInfoRun.normal_n81i"
+ fi
+ done
+ diskResult_baseInfo_police=${diskResult_baseInfo_police}${disk_baseInfo_police}
+ else
+ disk_detail_police="\"\",,,"
+ fi
+ diskResult_detail=${diskResult_detail}${disk_detail_police}${disk_detail_nopolice}
+ done
+}
+
+function getNetInfo {
+ sys_net_total_num=`echo "${sys_net_total_num}+${#net_all_if_arr[@]}"|bc`
+ net_total_num=`echo "${net_total_num}+${#net_avai_if_arr[@]}"|bc`
+ net_avai_baseInfo=""
+ net_disa_baseInfo=""
+ for((i=0;i<${#net_all_if_arr[@]};i++));do
+ net_rowNum=$((${net_all_if_arr[$i]: -1}+1))
+ net_if_name_t=`awk 'NR=="'${net_rowNum}'"{print $1}' ${netInfo}`
+ net_if_name=${net_if_name_t%?}
+ is_avai=`echo "${net_avai_if_arr[@]}" | grep -wq "${net_all_if_arr[$i]%?}" && echo "1" || echo "0"`
+ if [ "1" -eq "$is_avai" ]
+ then
+ echo "#!/bin/bash"$'\n'"ethtool ${net_if_name}" > ethtool.sh
+ chmod 760 ethtool.sh
+ net_if_ethtoolResult=`./ethtool.sh`
+ net_if_speed_t=`echo "${net_if_ethtoolResult}"|grep "Speed:"|awk '{print $2}'`
+ if [ ${#net_if_speed_t} -lt 1 ]
+ then
+ net_if_speed=0
+ else
+ net_if_speed=${net_if_speed_t:0:${#net_if_speed_t}-4}
+ fi
+ net_if_rxByte1=`awk 'NR=="'${net_rowNum}'"{print $2}' ${netInfo}`
+ net_if_rxByte2=`awk 'NR=="'${net_rowNum}'"{print $2}' ${netInfo}2`
+ net_if_rxBps=`echo "scale=2;($net_if_rxByte2-$net_if_rxByte1)/5"|bc|awk '{printf "%.2f",$0}'`
+ net_if_rxPackets1=`awk 'NR=="'${net_rowNum}'"{print $3}' ${netInfo}`
+ net_if_rxPackets2=`awk 'NR=="'${net_rowNum}'"{print $3}' ${netInfo}2`
+ net_if_rxPps_t=`echo "($net_if_rxPackets2-$net_if_rxPackets1)"|bc`
+ net_if_rxPps=`echo "scale=2;($net_if_rxPackets2-$net_if_rxPackets1)/5"|bc|awk '{printf "%.2f",$0}'`
+ net_if_txByte1=`awk 'NR=="'${net_rowNum}'"{print $10}' ${netInfo}`
+ net_if_txByte2=`awk 'NR=="'${net_rowNum}'"{print $10}' ${netInfo}2`
+ net_if_txBps=`echo "scale=2;($net_if_txByte2-$net_if_txByte1)/5"|bc|awk '{printf "%.2f",$0}'`
+ net_if_txPackets1=`awk 'NR=="'${net_rowNum}'"{print $11}' ${netInfo}`
+ net_if_txPackets2=`awk 'NR=="'${net_rowNum}'"{print $11}' ${netInfo}2`
+ net_if_txPps_t=`echo "($net_if_rxPackets2-$net_if_rxPackets1)"|bc`
+ net_if_txPps=`echo "scale=2;($net_if_txPackets2-$net_if_txPackets1)/5"|bc|awk '{printf "%.2f",$0}'`
+ net_if_rxError1=`awk 'NR=="'${net_rowNum}'"{print $4}' ${netInfo}`
+ net_if_rxError2=`awk 'NR=="'${net_rowNum}'"{print $4}' ${netInfo}2`
+ net_if_txError1=`awk 'NR=="'${net_rowNum}'"{print $12}' ${netInfo}`
+ net_if_txError2=`awk 'NR=="'${net_rowNum}'"{print $12}' ${netInfo}2`
+ net_if_rxDrop1=`awk 'NR=="'${net_rowNum}'"{print $5}' ${netInfo}`
+ net_if_rxDrop2=`awk 'NR=="'${net_rowNum}'"{print $5}' ${netInfo}2`
+ net_if_txDrop1=`awk 'NR=="'${net_rowNum}'"{print $13}' ${netInfo}`
+ net_if_txDrop2=`awk 'NR=="'${net_rowNum}'"{print $13}' ${netInfo}2`
+
+ if [ $net_if_rxPps_t -gt 0 ]
+ then
+ divide=$((net_if_rxPackets2-net_if_rxPackets1))
+ if [ $divide -eq 0 ]
+ then
+ net_if_rxErrorPerc=0.00
+ net_if_rxDropPerc=0.00
+ else
+ net_if_rxErrorPerc=`echo "scale=2;($net_if_rxError2-$net_if_rxError1)*100/($net_if_rxPackets2-$net_if_rxPackets1)"|bc|awk '{printf "%.2f",$0}'`
+ net_if_rxDropPerc=`echo "scale=2;($net_if_rxDrop2-$net_if_rxDrop1)*100/($net_if_rxPackets2-$net_if_rxPackets1)"|bc|awk '{printf "%.2f",$0}'`
+ fi
+ else
+ net_if_rxErrorPerc=0.00
+ net_if_rxDropPerc=0.00
+ fi
+ if [ $net_if_txPps_t -gt 0 ]
+ then
+ divide=$((net_if_txPackets2-net_if_txPackets1))
+ if [ $divide -eq 0 ]
+ then
+ net_if_txErrorPerc=0.00
+ net_if_txDropPerc=0.00
+ else
+ net_if_txErrorPerc=`echo "scale=2;($net_if_txError2-$net_if_txError1)*100/($net_if_txPackets2-$net_if_txPackets1)"|bc|awk '{printf "%.2f",$0}'`
+ net_if_txDropPerc=`echo "scale=2;($net_if_txDrop2-$net_if_txDrop1)*100/($net_if_txPackets2-$net_if_txPackets1)"|bc|awk '{printf "%.2f",$0}'`
+ fi
+ else
+ net_if_txErrorPerc=0.00
+ net_if_txDropPerc=0.00
+ fi
+ net_avai_baseInfo=${net_avai_baseInfo}${sep}${net_if_name}" i18n_client.SystemInfo.netSpeed_n81i"${net_if_speed}"Mbps, i18n_client.SystemInfo.input_n81i"${net_if_rxBps}"bps、"${net_if_rxPps}"pps, Output"${net_if_txBps}"bps、"${net_if_txPps}"pps; "
+ net_detail_nopolice=${net_if_name}","${net_if_rxPackets2}","${net_if_txPackets2}","${net_if_rxByte2}","${net_if_txByte2}","${net_if_rxError2}","${net_if_txError2}","${net_if_rxDrop2}","${net_if_txDrop2}","${net_if_speed}","${net_if_rxBps}","${net_if_txBps}","${net_if_rxPps}","${net_if_txPps}","${net_if_rxErrorPerc}","${net_if_txErrorPerc}","${net_if_rxDropPerc}","${net_if_txDropPerc}$'\n'
+ #netResult_detail=${netResult_detail}"\"\",,,${net_if_name}","${net_if_rxPackets2}","${net_if_txPackets2}","${net_if_rxByte2}","${net_if_txByte2}","${net_if_rxError2}","${net_if_txError2}","${net_if_rxDrop2}","${net_if_txDrop2}","${net_if_speed}","${net_if_rxBps}","${net_if_txBps}","${net_if_rxPps}","${net_if_txPps}","${net_if_rxErrorPerc}","${net_if_txErrorPerc}","${net_if_rxDropPerc}","${net_if_txDropPerc}$'\n'
+ # police
+ if [ ! -z $net_polices ]
+ then
+ OLD_IFS="$IFS"
+ IFS=","
+ net_detail_nopolice_arr=(${net_detail_nopolice})
+ IFS=$OLD_IFS
+ net_police_most_level=0
+ net_police_flag_t=0 #临时变量
+ net_baseInfo_police=""
+ for((j=0;j<${#net_polices_arr[@]};j++));do
+ net_detail_police_t=""
+ OLD_IFS="$IFS"
+ IFS="|"
+ net_police_arr=(${net_polices_arr[$j]})
+ IFS=$OLD_IFS
+ echo 2.2
+ if (($(echo "${net_detail_nopolice_arr[((${net_police_arr[0]}-1))]} ${net_police_arr[1]} ${net_police_arr[2]}"|bc) == 1))
+ then #触发告警
+ net_detail_police_t=${net_police_arr[0]}","${net_police_arr[3]}","${net_police_arr[2]}","
+ net_police_flag=1
+ net_police_flag_t=1
+ if ((${net_police_arr[3]} > ${net_police_most_level}))
+ then
+ net_police_most_level=${net_police_arr[3]}
+ net_detail_police=$net_detail_police_t
+ net_baseInfo_police="【${net_detail_nopolice_arr[0]}】"${net_police_arr[4]}${net_detail_nopolice_arr[((${net_police_arr[0]}-1))]}"% i18n_client.GetInfoRun.abnormal_n81i"
+ fi
+ elif [ $net_police_flag_t -eq 0 ]&&[ -z "${net_baseInfo_police}" ];then
+ net_detail_police="\"\",,,"
+ net_baseInfo_police="【${net_detail_nopolice_arr[0]}】"${net_police_arr[4]}${net_detail_nopolice_arr[((${net_police_arr[0]}-1))]}"% i18n_client.GetInfoRun.normal_n81i"
+ fi
+ done
+ netResult_baseInfo_police=${netResult_baseInfo_police}${net_baseInfo_police}
+ else
+ net_detail_police="\"\",,,"
+ fi
+ netResult_detail=${netResult_detail}${net_detail_police}${net_detail_nopolice}
+ else
+ net_disa_baseInfo=${net_disa_baseInfo}${sep}${net_if_name}"i18n_client.SystemInfo.disable_n81i; "
+ fi
+ done
+ if [[ "${netResult_baseInfo}" != "\"" ]];then
+ netResult_baseInfo="${netResult_baseInfo}"${sep}
+ fi
+ netResult_baseInfo=${netResult_baseInfo}${#net_all_if_arr[@]}"i18n_client.SystemInfo.insert_n81i: "${net_avai_baseInfo}${net_disa_baseInfo}
+}
+
+# main
+index=1
+#flag=1
+#while [ $flag -eq 1 ]; do
+# key='ip'${index}
+# value=`eval echo '$'${key}`
+#
+# if [ -z ${value} ]
+# then
+# flag=0
+# else
+# getDetail ${key} ${value}
+# let "index++"
+# fi
+#done
+getDetail
+
+## result
+# cpu
+cpuResult_baseInfo=${cpuResult_baseInfo}"\""
+if ((${cpu_police_flag} == 0 ))
+ then
+ cpuResult_baseInfo_police="\""${cpuResult_baseInfo}
+ cpu_police_flag=1
+ else
+ cpuResult_baseInfo_police="\""${cpuResult_baseInfo_police}"\""
+ cpu_police_flag=0
+fi
+echo "${cpuResult_taskInfo}""${cpu_police_flag},""\"${cpuResult_coreNum}""i18n_client.SystemInfo.core_n81i: ""${cpuResult_baseInfo}"",""${cpuResult_baseInfo_police}"$'\n'"details,""$((cpuResult_coreNum+index-1))"$'\n'"${cpuResult_detail}" > result/cpu.csv
+
+# mem
+memResult_baseInfo=${memResult_baseInfo}"\""
+if ((${mem_police_flag} == 0 ))
+ then
+ memResult_baseInfo_police=${memResult_baseInfo}
+ mem_police_flag=1
+ else
+ memResult_baseInfo_police="\""${memResult_baseInfo_police}"\""
+ mem_police_flag=0
+fi
+echo "${memResult_taskInfo}"${mem_police_flag}",${memResult_baseInfo}"",""${memResult_baseInfo_police}"$'\n'"details,1"$'\n'"${memResult_detail}" > result/mem.csv
+
+# disk
+diskResult_baseInfo=${diskResult_baseInfo}"\""
+if ((${disk_police_flag} == 0 ))
+ then
+ diskResult_baseInfo_police=${diskResult_baseInfo}
+ disk_police_flag=1
+ else
+ diskResult_baseInfo_police="\""${diskResult_baseInfo_police}"\""
+ disk_police_flag=0
+fi
+echo "${diskResult_taskInfo}"${disk_police_flag}",${diskResult_baseInfo}"",""${diskResult_baseInfo_police}"$'\n'"details,$disk_total_num"$'\n'"${diskResult_detail}" > result/disk.csv
+
+# net
+netResult_baseInfo=${netResult_baseInfo}"\""
+if ((${net_police_flag} == 0 ))
+ then
+ netResult_baseInfo_police=${netResult_baseInfo}
+ net_police_flag=1
+ else
+ netResult_baseInfo_police="\""${netResult_baseInfo_police}"\""
+ net_police_flag=0
+fi
+echo "${netResult_taskInfo}"${net_police_flag}",${netResult_baseInfo}"",""${netResult_baseInfo_police}"$'\n'"details,$net_total_num"$'\n'"${netResult_detail}" > result/net.csv
+
+# sys
+sysResult_baseInfo=${sysResult_baseInfo}"\""
+echo "${sysResult_taskInfo}""${sysResult_baseInfo}"",""${sysResult_baseInfo}"$'\n'"details,1"$'\n'"${sysResult_detail}""disk,${disk_total_num}"$'\n'"${sysResult_disk}""net,${sys_net_total_num}"$'\n'"${sysResult_net}" > result/sys.csv
+
+# runtimes
+#echo "${runtimesResult}" > result/runtimes.csv
+
+
+# 清理3天前的临时文件
+find macInfo -mtime +3 -name "*" -exec rm -rf {} \;
diff --git a/gloam/conf/collector/merge.sh b/gloam/conf/collector/merge.sh
new file mode 100644
index 0000000..43ec274
--- /dev/null
+++ b/gloam/conf/collector/merge.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+source /etc/profile
+basePath=$(cd `dirname $0`; pwd)
+
+cd ${basePath}
+while read line;do
+ eval "$line"
+done < config
+
+src_dir=${src_dir}"/result/*.csv" # 远程服务器文件所在目录
+dest_dir=${dest_dir}"/remote_result/"
+index=1
+flag=1
+while [ $flag -eq 1 ]; do
+ key='ip'${index}
+ value=`eval echo '$'${key}`
+
+ OLD_IFS="$IFS"
+ IFS=","
+ value_arr=($value)
+ IFS=$OLD_IFS
+
+ ip=${value_arr[0]}
+ username=${value_arr[1]}
+ password=${value_arr[2]}
+ isMaster=${value_arr[6]}
+ if [ ! -d "$dest_dir$ip" ];then
+ mkdir -p "$dest_dir$ip"
+ fi
+ if [ -z ${value} ];then
+ flag=0
+ else
+ if [ ! -d "$dest_dir/$ip" ];then
+ mkdir -p "$dest_dir/$ip"
+ fi
+ if [ $isMaster -eq '1' ];then
+ /usr/bin/mv $src_dir $dest_dir$ip/
+ else
+ echo "$username@$ip:$src_dir"
+ echo "./expect_scp $password $username@$ip:$src_dir $dest_dir$ip/"
+ ./expect_scp_get "$password" $username@$ip:$src_dir "$dest_dir$ip/"
+ echo "./expect_ssh $ip $username $password rm -f $src_dir"
+ ./expect_ssh "$ip" "$username" "$password" "rm -f $src_dir"
+ fi
+ let "index++"
+ fi
+done
+
diff --git a/gloam/conf/collector/modify_config_seqId.sh b/gloam/conf/collector/modify_config_seqId.sh
new file mode 100644
index 0000000..4da5224
--- /dev/null
+++ b/gloam/conf/collector/modify_config_seqId.sh
@@ -0,0 +1,63 @@
+#!/bin/bash
+basePath=$(cd `dirname $0`; pwd)
+cd ${basePath}
+
+echo "$basePath"
+#处理device_config 脚本
+if [ ! -f '/usr/local/bin/device_config' ];then
+ cp "$basePath"/device_config /usr/local/bin
+ if [ $? = 0 ];then
+ chmod +x /usr/local/bin/device_config
+ fi
+fi
+
+
+#修改configs文件夹下所有.cfg配置文件的pubInfo 中的seqid
+while read line;do
+ eval "$line"
+done < config
+index=1
+flag=1
+while [ $flag -eq 1 ]; do
+ key='ip'${index}
+ value=`eval echo '$'${key}`
+ OLD_IFS="$IFS"
+ IFS=","
+ #ip{id}=ip,user,pwd,name,ethname,sort,isMaster
+ value_arr=($value)
+ IFS=$OLD_IFS
+
+ ip=${value_arr[0]}
+ username=${value_arr[1]}
+ password=${value_arr[2]}
+ isMaster=${value_arr[6]}
+ ethname=${value_arr[4]}
+ if [ -z ${value} ];then
+ flag=0
+ else
+ #是本台机器
+ isThis=`ifconfig $ethname | head -2 | tail -n 1 | awk '{print $2}'`
+ if [ $isThis = "$ip" ]; then
+ for file in ./configs/*.cfg
+ do
+ #修改seqid
+ sed -i "s/^pubInfo=[^,]*/pubInfo=$index/g" $file
+ echo "modfiy $ip $file $index"
+ done
+ if [ $isMaster -eq 1 ];then
+ if [[ -f ${basePath}"/merge.sh" && -z "$(grep "$basePath/merge.sh" /var/spool/cron/root |grep -v 'grep' 2>/dev/null)" ]];then
+ echo "*/1 * * * * $basePath/merge.sh">>/var/spool/cron/root
+ echo "isMaster add merge.sh crontab"
+ fi
+ fi
+
+ #检查是否开启定时任务
+ if [ -z "$(grep $basePath/getSingleMacInfo.sh /var/spool/cron/root | grep -v 'grep' 2>/dev/null)" ];then
+ echo "*/5 * * * * $basePath/getSingleMacInfo.sh" >>/var/spool/cron/root
+ echo "$ip add getSingleMacInfo.sh crontab"
+ fi
+ flag=0
+ fi
+ let "index++"
+ fi
+done
diff --git a/gloam/conf/config.properties b/gloam/conf/config.properties
index aff3596..1fe7a12 100644
--- a/gloam/conf/config.properties
+++ b/gloam/conf/config.properties
@@ -1,7 +1,7 @@
#数据库连接
#jdbcUrl = jdbc:sqlite:/home/wwr/oam2.db
#jdbcUrl = jdbc:sqlite:D:\\Workspaces\\wwrWork\\gloam\\db\\oam.db
-jdbcUrl = jdbc:sqlite:D:\\oam1.db
+jdbcUrl = jdbc:sqlite:C:/Users/ThinkPad/git/oam/gloam/db/oam.db
#jdbcUrl = jdbc:sqlite://10.0.6.103/sqlite/oam.db
devMode = true
@@ -16,7 +16,7 @@ project_name = OAM
equipment_name = ASEM-T102
#静态资源地址
-webRootPath=WebRoot
+webRootPath=C:\\Users\\ThinkPad\\git\\oam\\gloam\\WebRoot
#端口号
port=8989
@@ -48,3 +48,4 @@ device_config_scriptCmd=device_config
#进程更新文件上传目录
process_upload_path=/home/wwr/gloam/upload
+ipinfo.config.path=C:\\Users\\ThinkPad\\git\\oam\\gloam\\collector\\config
\ No newline at end of file
diff --git a/gloam/conf/log4j.properties b/gloam/conf/log4j.properties
index c69ebb2..8e7723a 100644
--- a/gloam/conf/log4j.properties
+++ b/gloam/conf/log4j.properties
@@ -8,6 +8,6 @@ log4j.appender.stdout.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss}-[%p]-(%F
# Output to the File
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern='_'yyyy-MM-dd'.log'
-log4j.appender.file.File=./jfinal_demo.log
+log4j.appender.file.File=./logs/oam.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss}-[%p]-(%F:%L) [%t] : %m%n
\ No newline at end of file
diff --git a/gloam/db/oam.db b/gloam/db/oam.db
index 7ff1f2c..f3bd129 100644
Binary files a/gloam/db/oam.db and b/gloam/db/oam.db differ
diff --git a/gloam/jfinal_demo.log b/gloam/jfinal_demo.log
new file mode 100644
index 0000000..4aec0f7
--- /dev/null
+++ b/gloam/jfinal_demo.log
@@ -0,0 +1,295 @@
+2018-12-08 14:50:30-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 14:53:20-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 14:54:34-[ERROR]-(LogKit.java:75) [main] : Properties file not found in classpath: C:\Users\ThinkPad\git\oam\gloam/collector/config
+java.lang.IllegalArgumentException: Properties file not found in classpath: C:\Users\ThinkPad\git\oam\gloam/collector/config
+ at com.jfinal.kit.Prop.(Prop.java:60)
+ at com.jfinal.kit.PropKit.append(PropKit.java:135)
+ at com.jfinal.kit.PropKit.append(PropKit.java:139)
+ at com.nis.gloam.config.BaseConfig.configPlugin(BaseConfig.java:145)
+ at com.jfinal.core.Config.configPluginWithOrder(Config.java:70)
+ at com.jfinal.core.Config.configJFinal(Config.java:56)
+ at com.jfinal.core.JFinal.init(JFinal.java:63)
+ at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:49)
+ at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
+ at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
+ at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
+ at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
+ at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
+ at org.eclipse.jetty.server.Server.doStart(Server.java:277)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at com.jfinal.server.JettyServer.doStart(JettyServer.java:133)
+ at com.jfinal.server.JettyServer.start(JettyServer.java:70)
+ at com.jfinal.core.JFinal.start(JFinal.java:162)
+ at com.nis.gloam.main.StartUp.main(StartUp.java:35)
+2018-12-08 14:58:50-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 14:59:07-[ERROR]-(LogKit.java:75) [main] :
+java.lang.NullPointerException
+ at com.jfinal.plugin.activerecord.Model.find(Model.java:664)
+ at com.jfinal.plugin.activerecord.Model.find(Model.java:672)
+ at com.nis.gloam.config.BaseConfig.configPlugin(BaseConfig.java:158)
+ at com.jfinal.core.Config.configPluginWithOrder(Config.java:70)
+ at com.jfinal.core.Config.configJFinal(Config.java:56)
+ at com.jfinal.core.JFinal.init(JFinal.java:63)
+ at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:49)
+ at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
+ at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
+ at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
+ at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
+ at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
+ at org.eclipse.jetty.server.Server.doStart(Server.java:277)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at com.jfinal.server.JettyServer.doStart(JettyServer.java:133)
+ at com.jfinal.server.JettyServer.start(JettyServer.java:70)
+ at com.jfinal.core.JFinal.start(JFinal.java:162)
+ at com.nis.gloam.main.StartUp.main(StartUp.java:35)
+2018-12-08 15:02:08-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:02:09-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:02:09-[ERROR]-(Config.java:136) [main] : Plugin start error: com.jfinal.plugin.activerecord.ActiveRecordPlugin.
+java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:55)
+ at com.jfinal.plugin.activerecord.ActiveRecordPlugin.start(ActiveRecordPlugin.java:226)
+ at com.jfinal.core.Config.startPlugins(Config.java:128)
+ at com.jfinal.core.Config.configPluginWithOrder(Config.java:71)
+ at com.jfinal.core.Config.configJFinal(Config.java:56)
+ at com.jfinal.core.JFinal.init(JFinal.java:63)
+ at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:49)
+ at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
+ at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
+ at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
+ at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
+ at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
+ at org.eclipse.jetty.server.Server.doStart(Server.java:277)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at com.jfinal.server.JettyServer.doStart(JettyServer.java:133)
+ at com.jfinal.server.JettyServer.start(JettyServer.java:70)
+ at com.jfinal.core.JFinal.start(JFinal.java:162)
+ at com.nis.gloam.main.StartUp.main(StartUp.java:35)
+Caused by: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at org.sqlite.DB.newSQLException(DB.java:383)
+ at org.sqlite.DB.newSQLException(DB.java:387)
+ at org.sqlite.DB.throwex(DB.java:374)
+ at org.sqlite.NativeDB.prepare(Native Method)
+ at org.sqlite.DB.prepare(DB.java:123)
+ at org.sqlite.Stmt.executeQuery(Stmt.java:121)
+ at com.alibaba.druid.pool.DruidPooledStatement.executeQuery(DruidPooledStatement.java:140)
+ at com.jfinal.plugin.activerecord.TableBuilder.doBuild(TableBuilder.java:71)
+ at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:47)
+ ... 21 more
+2018-12-08 15:02:09-[ERROR]-(LogKit.java:75) [main] : Plugin start error: com.jfinal.plugin.activerecord.ActiveRecordPlugin.
+java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+java.lang.RuntimeException: Plugin start error: com.jfinal.plugin.activerecord.ActiveRecordPlugin.
+java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at com.jfinal.core.Config.startPlugins(Config.java:137)
+ at com.jfinal.core.Config.configPluginWithOrder(Config.java:71)
+ at com.jfinal.core.Config.configJFinal(Config.java:56)
+ at com.jfinal.core.JFinal.init(JFinal.java:63)
+ at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:49)
+ at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
+ at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
+ at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
+ at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
+ at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
+ at org.eclipse.jetty.server.Server.doStart(Server.java:277)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at com.jfinal.server.JettyServer.doStart(JettyServer.java:133)
+ at com.jfinal.server.JettyServer.start(JettyServer.java:70)
+ at com.jfinal.core.JFinal.start(JFinal.java:162)
+ at com.nis.gloam.main.StartUp.main(StartUp.java:35)
+Caused by: com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:55)
+ at com.jfinal.plugin.activerecord.ActiveRecordPlugin.start(ActiveRecordPlugin.java:226)
+ at com.jfinal.core.Config.startPlugins(Config.java:128)
+ ... 19 more
+Caused by: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at org.sqlite.DB.newSQLException(DB.java:383)
+ at org.sqlite.DB.newSQLException(DB.java:387)
+ at org.sqlite.DB.throwex(DB.java:374)
+ at org.sqlite.NativeDB.prepare(Native Method)
+ at org.sqlite.DB.prepare(DB.java:123)
+ at org.sqlite.Stmt.executeQuery(Stmt.java:121)
+ at com.alibaba.druid.pool.DruidPooledStatement.executeQuery(DruidPooledStatement.java:140)
+ at com.jfinal.plugin.activerecord.TableBuilder.doBuild(TableBuilder.java:71)
+ at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:47)
+ ... 21 more
+2018-12-08 15:03:05-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:03:06-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:03:06-[ERROR]-(Config.java:136) [main] : Plugin start error: com.jfinal.plugin.activerecord.ActiveRecordPlugin.
+java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:55)
+ at com.jfinal.plugin.activerecord.ActiveRecordPlugin.start(ActiveRecordPlugin.java:226)
+ at com.jfinal.core.Config.startPlugins(Config.java:128)
+ at com.jfinal.core.Config.configPluginWithOrder(Config.java:71)
+ at com.jfinal.core.Config.configJFinal(Config.java:56)
+ at com.jfinal.core.JFinal.init(JFinal.java:63)
+ at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:49)
+ at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
+ at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
+ at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
+ at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
+ at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
+ at org.eclipse.jetty.server.Server.doStart(Server.java:277)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at com.jfinal.server.JettyServer.doStart(JettyServer.java:133)
+ at com.jfinal.server.JettyServer.start(JettyServer.java:70)
+ at com.jfinal.core.JFinal.start(JFinal.java:162)
+ at com.nis.gloam.main.StartUp.main(StartUp.java:35)
+Caused by: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at org.sqlite.DB.newSQLException(DB.java:383)
+ at org.sqlite.DB.newSQLException(DB.java:387)
+ at org.sqlite.DB.throwex(DB.java:374)
+ at org.sqlite.NativeDB.prepare(Native Method)
+ at org.sqlite.DB.prepare(DB.java:123)
+ at org.sqlite.Stmt.executeQuery(Stmt.java:121)
+ at com.alibaba.druid.pool.DruidPooledStatement.executeQuery(DruidPooledStatement.java:140)
+ at com.jfinal.plugin.activerecord.TableBuilder.doBuild(TableBuilder.java:71)
+ at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:47)
+ ... 21 more
+2018-12-08 15:03:06-[ERROR]-(LogKit.java:75) [main] : Plugin start error: com.jfinal.plugin.activerecord.ActiveRecordPlugin.
+java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+java.lang.RuntimeException: Plugin start error: com.jfinal.plugin.activerecord.ActiveRecordPlugin.
+java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at com.jfinal.core.Config.startPlugins(Config.java:137)
+ at com.jfinal.core.Config.configPluginWithOrder(Config.java:71)
+ at com.jfinal.core.Config.configJFinal(Config.java:56)
+ at com.jfinal.core.JFinal.init(JFinal.java:63)
+ at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:49)
+ at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
+ at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
+ at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
+ at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
+ at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
+ at org.eclipse.jetty.server.Server.doStart(Server.java:277)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at com.jfinal.server.JettyServer.doStart(JettyServer.java:133)
+ at com.jfinal.server.JettyServer.start(JettyServer.java:70)
+ at com.jfinal.core.JFinal.start(JFinal.java:162)
+ at com.nis.gloam.main.StartUp.main(StartUp.java:35)
+Caused by: com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:55)
+ at com.jfinal.plugin.activerecord.ActiveRecordPlugin.start(ActiveRecordPlugin.java:226)
+ at com.jfinal.core.Config.startPlugins(Config.java:128)
+ ... 19 more
+Caused by: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (no such table: sys_user)
+ at org.sqlite.DB.newSQLException(DB.java:383)
+ at org.sqlite.DB.newSQLException(DB.java:387)
+ at org.sqlite.DB.throwex(DB.java:374)
+ at org.sqlite.NativeDB.prepare(Native Method)
+ at org.sqlite.DB.prepare(DB.java:123)
+ at org.sqlite.Stmt.executeQuery(Stmt.java:121)
+ at com.alibaba.druid.pool.DruidPooledStatement.executeQuery(DruidPooledStatement.java:140)
+ at com.jfinal.plugin.activerecord.TableBuilder.doBuild(TableBuilder.java:71)
+ at com.jfinal.plugin.activerecord.TableBuilder.build(TableBuilder.java:47)
+ ... 21 more
+2018-12-08 15:04:41-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:04:41-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:05:07-[ERROR]-(LogKit.java:75) [main] : dao 只允许调用查询方法
+java.lang.RuntimeException: dao 只允许调用查询方法
+ at com.jfinal.plugin.activerecord.DaoContainerFactory$DaoMap.get(DaoContainerFactory.java:74)
+ at com.jfinal.plugin.activerecord.Model.get(Model.java:276)
+ at com.nis.gloam.config.BaseConfig.afterJFinalStart(BaseConfig.java:186)
+ at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:56)
+ at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
+ at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
+ at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
+ at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
+ at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
+ at org.eclipse.jetty.server.Server.doStart(Server.java:277)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at com.jfinal.server.JettyServer.doStart(JettyServer.java:133)
+ at com.jfinal.server.JettyServer.start(JettyServer.java:70)
+ at com.jfinal.core.JFinal.start(JFinal.java:162)
+ at com.nis.gloam.main.StartUp.main(StartUp.java:35)
+2018-12-08 15:05:53-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:05:54-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:05:58-[ERROR]-(LogKit.java:75) [main] : 3
+java.lang.ArrayIndexOutOfBoundsException: 3
+ at com.nis.gloam.config.BaseConfig.afterJFinalStart(BaseConfig.java:199)
+ at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:56)
+ at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
+ at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
+ at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
+ at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
+ at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
+ at org.eclipse.jetty.server.Server.doStart(Server.java:277)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at com.jfinal.server.JettyServer.doStart(JettyServer.java:133)
+ at com.jfinal.server.JettyServer.start(JettyServer.java:70)
+ at com.jfinal.core.JFinal.start(JFinal.java:162)
+ at com.nis.gloam.main.StartUp.main(StartUp.java:35)
+2018-12-08 15:06:25-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:06:26-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:08:28-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:08:29-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:09:42-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:09:43-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:09:57-[ERROR]-(LogKit.java:75) [main] : java.sql.SQLException: [SQLITE_MISMATCH] Data type mismatch (datatype mismatch)
+com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: [SQLITE_MISMATCH] Data type mismatch (datatype mismatch)
+ at com.jfinal.plugin.activerecord.Model.save(Model.java:533)
+ at com.nis.gloam.config.BaseConfig.afterJFinalStart(BaseConfig.java:205)
+ at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:56)
+ at org.eclipse.jetty.servlet.FilterHolder.doStart(FilterHolder.java:119)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:724)
+ at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265)
+ at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
+ at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
+ at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
+ at org.eclipse.jetty.server.Server.doStart(Server.java:277)
+ at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
+ at com.jfinal.server.JettyServer.doStart(JettyServer.java:133)
+ at com.jfinal.server.JettyServer.start(JettyServer.java:70)
+ at com.jfinal.core.JFinal.start(JFinal.java:162)
+ at com.nis.gloam.main.StartUp.main(StartUp.java:35)
+Caused by: java.sql.SQLException: [SQLITE_MISMATCH] Data type mismatch (datatype mismatch)
+ at org.sqlite.DB.newSQLException(DB.java:383)
+ at org.sqlite.DB.newSQLException(DB.java:387)
+ at org.sqlite.DB.execute(DB.java:342)
+ at org.sqlite.DB.executeUpdate(DB.java:363)
+ at org.sqlite.PrepStmt.executeUpdate(PrepStmt.java:85)
+ at com.alibaba.druid.pool.DruidPooledPreparedStatement.executeUpdate(DruidPooledPreparedStatement.java:253)
+ at com.jfinal.plugin.activerecord.Model.save(Model.java:528)
+ ... 17 more
+2018-12-08 15:12:47-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:12:48-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:13:08-[INFO]-(BaseConfig.java:212) [main] : 文件定时读取任务启动
+2018-12-08 15:13:10-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 15:14:03-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:14:04-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:14:10-[INFO]-(BaseConfig.java:212) [main] : 文件定时读取任务启动
+2018-12-08 15:14:12-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
diff --git a/gloam/logs/oam.log b/gloam/logs/oam.log
new file mode 100644
index 0000000..0e2c5fd
--- /dev/null
+++ b/gloam/logs/oam.log
@@ -0,0 +1,176 @@
+2018-12-09 17:08:26-[DEBUG]-(I18nFilter.java:124) [main] : i18nFile: i18n/globalMessages
+2018-12-09 17:08:27-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-09 17:08:27-[INFO]-(BaseConfig.java:210) [main] : 文件定时读取任务启动
+2018-12-09 17:08:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:08:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:09:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:09:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:09:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:09:58-[DEBUG]-(ProcessController.java:49) [qtp1665581595-28] : nodes.sise=1
+2018-12-09 17:09:58-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-1] : 10.0.6.126执行:echo -n `ps -ef | grep ./sapp| grep -v grep | wc -l`,;ps -aux | grep './sapp'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:10:00-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:10:00-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-1] : 10.0.6.126执行:echo -n `ps -ef | grep ./tensor| grep -v grep | wc -l`,;ps -aux | grep './tensor'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:10:02-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:10:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:10:09-[INFO]-(ConfigController.java:52) [qtp1665581595-25] : serverDto ==========10.0.6.126
+2018-12-09 17:10:09-[INFO]-(ConfigController.java:57) [qtp1665581595-25] : query config request para --[{"type":"7","ip":"10.0.6.126"}]
+2018-12-09 17:10:09-[INFO]-(ConfigController.java:78) [qtp1665581595-25] : query config response map{}
+2018-12-09 17:10:10-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-2] : 10.0.6.126执行:echo -n `ps -ef | grep ./sapp| grep -v grep | wc -l`,;ps -aux | grep './sapp'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:10:12-[INFO]-(RouteController.java:59) [qtp1665581595-28] : query route request para --[{"type":"5","ip":"10.0.6.126"}]
+2018-12-09 17:10:12-[INFO]-(RouteController.java:62) [qtp1665581595-28] : 本机执行:[{"type":"5","ip":"10.0.6.126"}]
+2018-12-09 17:10:12-[INFO]-(RouteController.java:77) [qtp1665581595-28] : query route response map{}
+2018-12-09 17:10:12-[ERROR]-(OperateLogInterceptor.java:32) [qtp1665581595-28] : java.lang.NullPointerException
+java.lang.NullPointerException
+ at com.nis.gloam.controller.RouteController.index(RouteController.java:80)
+ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
+ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+ at java.lang.reflect.Method.invoke(Method.java:606)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:73)
+ at com.nis.gloam.interceptor.OperateLogInterceptor.intercept(OperateLogInterceptor.java:22)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.nis.gloam.interceptor.CookieInViewInterceptor.intercept(CookieInViewInterceptor.java:13)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.ext.interceptor.SessionInViewInterceptor.intercept(SessionInViewInterceptor.java:44)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.i18n.I18nInterceptor.intercept(I18nInterceptor.java:104)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.nis.gloam.interceptor.LoginInterceptor.intercept(LoginInterceptor.java:40)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.core.ActionHandler.handle(ActionHandler.java:78)
+ at com.jfinal.ext.handler.ContextPathHandler.handle(ContextPathHandler.java:48)
+ at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:73)
+ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
+ at com.nis.gloam.filter.I18nFilter.doFilter(I18nFilter.java:70)
+ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
+ at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
+ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
+ at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
+ at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
+ at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
+ at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
+ at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
+ at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
+ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
+ at org.eclipse.jetty.server.Server.handle(Server.java:365)
+ at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
+ at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:926)
+ at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:988)
+ at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:635)
+ at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
+ at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
+ at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
+ at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
+ at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
+ at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
+ at java.lang.Thread.run(Thread.java:745)
+2018-12-09 17:10:12-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-2] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:10:12-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-2] : 10.0.6.126执行:echo -n `ps -ef | grep ./tensor| grep -v grep | wc -l`,;ps -aux | grep './tensor'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:10:14-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-2] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:10:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:10:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:11:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:11:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:11:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:12:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:12:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:12:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:13:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:13:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:13:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:14:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:14:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:14:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:15:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:15:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:15:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:16:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:16:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:16:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:17:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:17:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:17:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:18:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:18:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:18:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:19:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:19:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:19:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:20:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:20:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:20:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:21:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:21:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:21:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:22:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:22:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:22:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:23:09-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:23:29-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:23:49-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:26:58-[DEBUG]-(I18nFilter.java:124) [main] : i18nFile: i18n/globalMessages
+2018-12-09 17:26:58-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-09 17:26:59-[INFO]-(BaseConfig.java:210) [main] : 文件定时读取任务启动
+2018-12-09 17:27:01-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:27:21-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:27:41-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:28:01-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:28:09-[DEBUG]-(ProcessController.java:49) [qtp382140875-27] : nodes.sise=1
+2018-12-09 17:28:09-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-1] : 10.0.6.126执行:echo -n `ps -ef | grep ./sapp| grep -v grep | wc -l`,;ps -aux | grep './sapp'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:28:11-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:28:11-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-1] : 10.0.6.126执行:echo -n `ps -ef | grep ./tensor| grep -v grep | wc -l`,;ps -aux | grep './tensor'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:28:12-[DEBUG]-(ProcessController.java:49) [qtp382140875-24] : nodes.sise=1
+2018-12-09 17:28:12-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-2] : 10.0.6.126执行:echo -n `ps -ef | grep ./sapp| grep -v grep | wc -l`,;ps -aux | grep './sapp'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:28:13-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:28:14-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-2] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:28:14-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-2] : 10.0.6.126执行:echo -n `ps -ef | grep ./tensor| grep -v grep | wc -l`,;ps -aux | grep './tensor'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:28:16-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-2] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:28:21-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:28:36-[INFO]-(ConfigController.java:52) [qtp382140875-29] : serverDto ==========10.0.6.126
+2018-12-09 17:28:36-[INFO]-(ConfigController.java:57) [qtp382140875-29] : query config request para --[{"type":"7","ip":"10.0.6.126"}]
+2018-12-09 17:28:36-[INFO]-(ConfigController.java:78) [qtp382140875-29] : query config response map{}
+2018-12-09 17:28:41-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:29:01-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:30:32-[DEBUG]-(I18nFilter.java:124) [main] : i18nFile: i18n/globalMessages
+2018-12-09 17:30:33-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-09 17:30:33-[INFO]-(BaseConfig.java:210) [main] : 文件定时读取任务启动
+2018-12-09 17:30:35-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:30:55-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:31:15-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:31:30-[DEBUG]-(ProcessController.java:49) [qtp1665581595-25] : nodes.sise=1
+2018-12-09 17:31:30-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-1] : 10.0.6.126执行:echo -n `ps -ef | grep ./sapp| grep -v grep | wc -l`,;ps -aux | grep './sapp'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:31:32-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:31:32-[INFO]-(ProcessInfoService.java:224) [pool-1-thread-1] : 10.0.6.126执行:echo -n `ps -ef | grep ./tensor| grep -v grep | wc -l`,;ps -aux | grep './tensor'| grep -v grep | awk '{print $9","$2","$3","$4}'
+2018-12-09 17:31:34-[ERROR]-(ProcessInfoService.java:228) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-09 17:31:35-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:51:41-[DEBUG]-(I18nFilter.java:124) [main] : i18nFile: i18n/globalMessages
+2018-12-09 17:51:42-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-09 17:51:42-[INFO]-(BaseConfig.java:210) [main] : 文件定时读取任务启动
+2018-12-09 17:51:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:52:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:52:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:52:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:53:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:53:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:53:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:54:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:54:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:54:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:55:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:55:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:55:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:56:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:56:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:56:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:57:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:57:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:57:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:58:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:58:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:58:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:59:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:59:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 17:59:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 18:00:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-09 18:00:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
diff --git a/gloam/logs/oam.log_2018-12-08.log b/gloam/logs/oam.log_2018-12-08.log
new file mode 100644
index 0000000..bac7e53
--- /dev/null
+++ b/gloam/logs/oam.log_2018-12-08.log
@@ -0,0 +1,252 @@
+2018-12-08 15:31:02-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 15:31:03-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 15:31:09-[INFO]-(BaseConfig.java:211) [main] : 文件定时读取任务启动
+2018-12-08 15:31:11-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:23:18-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 17:23:19-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 17:23:26-[INFO]-(BaseConfig.java:210) [main] : 文件定时读取任务启动
+2018-12-08 17:23:28-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:23:48-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:24:08-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:24:28-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:24:48-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:25:08-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:25:28-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:25:48-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:26:08-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:26:28-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:26:48-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:27:08-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:27:28-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 17:27:28-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 17:27:29-[INFO]-(BaseConfig.java:210) [main] : 文件定时读取任务启动
+2018-12-08 17:27:31-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:27:51-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:28:01-[DEBUG]-(I18nFilter.java:125) [main] : i18nFile: i18n/globalMessages
+2018-12-08 17:28:02-[INFO]-(DruidDataSource.java:785) [main] : {dataSource-1} inited
+2018-12-08 17:28:02-[INFO]-(BaseConfig.java:210) [main] : 文件定时读取任务启动
+2018-12-08 17:28:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:28:17-[DEBUG]-(ProcessController.java:49) [qtp980528520-28] : nodes.sise=1
+2018-12-08 17:28:17-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-1] : 10.0.6.126执行:status=`ps -ef |grep ./sapp |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:28:19-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:28:19-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-1] : 10.0.6.126执行:status=`ps -ef |grep ./tensor |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:28:21-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:28:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:28:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:29:01-[DEBUG]-(ProcessController.java:49) [qtp980528520-28] : nodes.sise=1
+2018-12-08 17:29:01-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-2] : 10.0.6.126执行:status=`ps -ef |grep ./sapp |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:29:03-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-2] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:29:03-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-2] : 10.0.6.126执行:status=`ps -ef |grep ./tensor |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:29:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:29:05-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-2] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:29:12-[DEBUG]-(ProcessController.java:49) [qtp980528520-22] : nodes.sise=1
+2018-12-08 17:29:12-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-3] : 10.0.6.126执行:status=`ps -ef |grep ./sapp |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:29:14-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-3] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:29:14-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-3] : 10.0.6.126执行:status=`ps -ef |grep ./tensor |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:29:16-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-3] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:29:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:29:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:30:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:30:17-[DEBUG]-(ProcessController.java:49) [qtp980528520-24] : nodes.sise=1
+2018-12-08 17:30:17-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-4] : 10.0.6.126执行:status=`ps -ef |grep ./sapp |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:30:19-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-4] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:30:19-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-4] : 10.0.6.126执行:status=`ps -ef |grep ./tensor |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:30:20-[DEBUG]-(ProcessController.java:49) [qtp980528520-23] : nodes.sise=1
+2018-12-08 17:30:20-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-5] : 10.0.6.126执行:status=`ps -ef |grep ./sapp |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:30:21-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-4] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:30:22-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-5] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:30:22-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-5] : 10.0.6.126执行:status=`ps -ef |grep ./tensor |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:30:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:30:24-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-5] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:30:35-[INFO]-(ConfigController.java:52) [qtp980528520-24] : serverDto ==========10.0.6.126
+2018-12-08 17:30:35-[INFO]-(ConfigController.java:57) [qtp980528520-24] : query config request para --[{"type":"7","ip":"10.0.6.126"}]
+2018-12-08 17:30:36-[INFO]-(ConfigController.java:78) [qtp980528520-24] : query config response map{}
+2018-12-08 17:30:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:30:51-[INFO]-(ConfigController.java:52) [qtp980528520-23] : serverDto ==========10.0.6.126
+2018-12-08 17:30:51-[INFO]-(ConfigController.java:57) [qtp980528520-23] : query config request para --[{"type":"7","ip":"10.0.6.126"}]
+2018-12-08 17:30:51-[INFO]-(ConfigController.java:78) [qtp980528520-23] : query config response map{}
+2018-12-08 17:30:52-[INFO]-(ConfigController.java:52) [qtp980528520-23] : serverDto ==========10.0.6.126
+2018-12-08 17:30:52-[INFO]-(ConfigController.java:57) [qtp980528520-23] : query config request para --[{"type":"7","ip":"10.0.6.126"}]
+2018-12-08 17:30:52-[INFO]-(ConfigController.java:78) [qtp980528520-23] : query config response map{}
+2018-12-08 17:31:01-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-1] : 10.0.6.126执行:status=`ps -ef |grep ./sapp |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:31:03-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:31:03-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-1] : 10.0.6.126执行:status=`ps -ef |grep ./tensor |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:31:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:31:05-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-1] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:31:10-[INFO]-(RouteController.java:59) [qtp980528520-24] : query route request para --[{"type":"5","ip":"10.0.6.126"}]
+2018-12-08 17:31:10-[INFO]-(RouteController.java:62) [qtp980528520-24] : 本机执行:[{"type":"5","ip":"10.0.6.126"}]
+2018-12-08 17:31:10-[INFO]-(RouteController.java:77) [qtp980528520-24] : query route response map{}
+2018-12-08 17:31:10-[ERROR]-(OperateLogInterceptor.java:32) [qtp980528520-24] : java.lang.NullPointerException
+java.lang.NullPointerException
+ at com.nis.gloam.controller.RouteController.index(RouteController.java:80)
+ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
+ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+ at java.lang.reflect.Method.invoke(Method.java:606)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:73)
+ at com.nis.gloam.interceptor.OperateLogInterceptor.intercept(OperateLogInterceptor.java:22)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.nis.gloam.interceptor.CookieInViewInterceptor.intercept(CookieInViewInterceptor.java:13)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.ext.interceptor.SessionInViewInterceptor.intercept(SessionInViewInterceptor.java:44)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.i18n.I18nInterceptor.intercept(I18nInterceptor.java:104)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.nis.gloam.interceptor.LoginInterceptor.intercept(LoginInterceptor.java:40)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.core.ActionHandler.handle(ActionHandler.java:78)
+ at com.jfinal.ext.handler.ContextPathHandler.handle(ContextPathHandler.java:48)
+ at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:73)
+ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
+ at com.nis.gloam.filter.I18nFilter.doFilter(I18nFilter.java:74)
+ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
+ at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
+ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
+ at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
+ at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
+ at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
+ at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
+ at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
+ at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
+ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
+ at org.eclipse.jetty.server.Server.handle(Server.java:365)
+ at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
+ at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:926)
+ at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:988)
+ at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:635)
+ at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
+ at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
+ at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
+ at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
+ at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
+ at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
+ at java.lang.Thread.run(Thread.java:745)
+2018-12-08 17:31:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:31:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:32:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:32:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:32:38-[DEBUG]-(ProcessController.java:49) [qtp980528520-23] : nodes.sise=1
+2018-12-08 17:32:38-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-2] : 10.0.6.126执行:status=`ps -ef |grep ./sapp |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:32:40-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-2] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:32:40-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-2] : 10.0.6.126执行:status=`ps -ef |grep ./tensor |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:32:42-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-2] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:32:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:32:50-[INFO]-(ConfigController.java:52) [qtp980528520-23] : serverDto ==========10.0.6.126
+2018-12-08 17:32:50-[INFO]-(ConfigController.java:57) [qtp980528520-23] : query config request para --[{"type":"7","ip":"10.0.6.126"}]
+2018-12-08 17:32:50-[INFO]-(ConfigController.java:78) [qtp980528520-23] : query config response map{}
+2018-12-08 17:32:52-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-3] : 10.0.6.126执行:status=`ps -ef |grep ./sapp |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:32:54-[INFO]-(RouteController.java:59) [qtp980528520-27] : query route request para --[{"type":"5","ip":"10.0.6.126"}]
+2018-12-08 17:32:54-[INFO]-(RouteController.java:62) [qtp980528520-27] : 本机执行:[{"type":"5","ip":"10.0.6.126"}]
+2018-12-08 17:32:54-[INFO]-(RouteController.java:77) [qtp980528520-27] : query route response map{}
+2018-12-08 17:32:54-[ERROR]-(OperateLogInterceptor.java:32) [qtp980528520-27] : java.lang.NullPointerException
+java.lang.NullPointerException
+ at com.nis.gloam.controller.RouteController.index(RouteController.java:80)
+ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
+ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+ at java.lang.reflect.Method.invoke(Method.java:606)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:73)
+ at com.nis.gloam.interceptor.OperateLogInterceptor.intercept(OperateLogInterceptor.java:22)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.nis.gloam.interceptor.CookieInViewInterceptor.intercept(CookieInViewInterceptor.java:13)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.ext.interceptor.SessionInViewInterceptor.intercept(SessionInViewInterceptor.java:44)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.i18n.I18nInterceptor.intercept(I18nInterceptor.java:104)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.nis.gloam.interceptor.LoginInterceptor.intercept(LoginInterceptor.java:40)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.core.ActionHandler.handle(ActionHandler.java:78)
+ at com.jfinal.ext.handler.ContextPathHandler.handle(ContextPathHandler.java:48)
+ at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:73)
+ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
+ at com.nis.gloam.filter.I18nFilter.doFilter(I18nFilter.java:74)
+ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
+ at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
+ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
+ at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
+ at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
+ at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
+ at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
+ at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
+ at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
+ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
+ at org.eclipse.jetty.server.Server.handle(Server.java:365)
+ at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
+ at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:926)
+ at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:988)
+ at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:635)
+ at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
+ at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
+ at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
+ at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
+ at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
+ at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
+ at java.lang.Thread.run(Thread.java:745)
+2018-12-08 17:32:54-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-3] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:32:54-[INFO]-(ProcessInfoService.java:228) [pool-1-thread-3] : 10.0.6.126执行:status=`ps -ef |grep ./tensor |grep -v -e grep -e tail -e expect |wc -l`;if [ $status -ge 1 ];then echo ${status},`ps -ef |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $5}'`,$pid,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $3}'`,`ps aux |grep $pid |grep -v -e grep -e tail -e expect | awk '{print $4}'`;fi
+2018-12-08 17:32:56-[ERROR]-(ProcessInfoService.java:232) [pool-1-thread-3] : com.jcraft.jsch.JSchException: timeout: socket is not established
+2018-12-08 17:32:59-[INFO]-(RouteController.java:59) [qtp980528520-24] : query route request para --[{"type":"5","ip":"10.0.6.126"}]
+2018-12-08 17:32:59-[INFO]-(RouteController.java:62) [qtp980528520-24] : 本机执行:[{"type":"5","ip":"10.0.6.126"}]
+2018-12-08 17:32:59-[INFO]-(RouteController.java:77) [qtp980528520-24] : query route response map{}
+2018-12-08 17:32:59-[ERROR]-(OperateLogInterceptor.java:32) [qtp980528520-24] : java.lang.NullPointerException
+java.lang.NullPointerException
+ at com.nis.gloam.controller.RouteController.index(RouteController.java:80)
+ at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+ at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
+ at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+ at java.lang.reflect.Method.invoke(Method.java:606)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:73)
+ at com.nis.gloam.interceptor.OperateLogInterceptor.intercept(OperateLogInterceptor.java:22)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.nis.gloam.interceptor.CookieInViewInterceptor.intercept(CookieInViewInterceptor.java:13)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.ext.interceptor.SessionInViewInterceptor.intercept(SessionInViewInterceptor.java:44)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.i18n.I18nInterceptor.intercept(I18nInterceptor.java:104)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.nis.gloam.interceptor.LoginInterceptor.intercept(LoginInterceptor.java:40)
+ at com.jfinal.aop.Invocation.invoke(Invocation.java:67)
+ at com.jfinal.core.ActionHandler.handle(ActionHandler.java:78)
+ at com.jfinal.ext.handler.ContextPathHandler.handle(ContextPathHandler.java:48)
+ at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:73)
+ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
+ at com.nis.gloam.filter.I18nFilter.doFilter(I18nFilter.java:74)
+ at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
+ at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
+ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
+ at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
+ at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
+ at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
+ at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
+ at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
+ at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
+ at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
+ at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
+ at org.eclipse.jetty.server.Server.handle(Server.java:365)
+ at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
+ at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:926)
+ at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:988)
+ at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:635)
+ at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
+ at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
+ at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
+ at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
+ at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
+ at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
+ at java.lang.Thread.run(Thread.java:745)
+2018-12-08 17:33:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:33:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:33:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:34:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:34:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:34:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:35:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:35:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:35:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:36:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:36:24-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:36:44-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
+2018-12-08 17:37:04-[ERROR]-(DetectDataFileReadTask.java:38) [文件读取线程] : 设备信息根目录不存在,请检查配置文件:detect_data_root_path
diff --git a/gloam/shell/oam.sh b/gloam/shell/oam.sh
new file mode 100644
index 0000000..7547124
--- /dev/null
+++ b/gloam/shell/oam.sh
@@ -0,0 +1,193 @@
+#!/bin/sh
+
+# -----------------------------------------------------------------------------
+# Start/Stop Script for the DATACONTROLLER Server
+#
+# Environment Variable Prequisites
+#
+# DATACONTROLLER_HOME May point at your DATACONTROLLER "build" directory.
+# -----------------------------------------------------------------------------
+
+# resolve links - $0 may be a softlink
+PRG="$0"
+
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`/"$link"
+ fi
+done
+
+PRGDIR=`dirname "$PRG"`
+
+# Only set DATACONTROLLER_HOME if not already set
+[ -z "$DATACONTROLLER_HOME" ] && DATACONTROLLER_HOME=`cd "$PRGDIR/.." ; pwd`
+cd "$DATACONTROLLER_HOME"/shell
+
+if [ -z "$DATACONTROLLER_TMPDIR" ] ; then
+ DATACONTROLLER_TMPDIR="$DATACONTROLLER_HOME"/temp
+fi
+if [ ! -d $DATACONTROLLER_TMPDIR ]
+ then
+ mkdir $DATACONTROLLER_TMPDIR
+fi
+
+
+# -------- set jdk path
+export JAVA_HOME=$DATACONTROLLER_HOME/jre1.7.0_80
+export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
+
+
+temp=$CLASSPATH
+#setting libs path
+libs="$DATACONTROLLER_HOME"/lib/*
+append(){
+ temp=$temp":"$1
+}
+for file in $libs; do
+ append $file
+done
+jars="$DATACONTROLLER_HOME"/bin/*
+for file in $jars; do
+ append $file
+done
+export DC_CLASSPATH=$temp:.:$DATACONTROLLER_HOME/conf
+export LD_LIBRARY_PATH=$DATACONTROLLERT_HOME/lib
+export LANG=zh_CN.UTF-8
+
+echo "Using OAM_HOME: $DATACONTROLLER_HOME"
+echo "Using OAM_TMPDIR: $DATACONTROLLER_TMPDIR"
+echo "Using JAVA_HOME: $JAVA_HOME"
+echo "Using CLASSPATH: $DC_CLASSPATH"
+
+# ---- get jvm param
+jvmconf_file=$DATACONTROLLER_HOME"/conf/jvm.conf"
+if [ -f $jvmconf_file ]
+ then
+ XmsOpt=`sed -n '/-Xms/p' $jvmconf_file`
+ XmxOpt=`sed -n '/-Xmx/p' $jvmconf_file`
+ JAVA_OPTS="$XmsOpt $XmxOpt -XX:+UseParNewGC"
+else
+ JAVA_OPTS="-Xms64m -Xmx256m -XX:+UseParNewGC"
+fi
+# ij
+program="com.nis.gloam.main.StartUp"
+name="gloam"
+
+proc_id=
+
+writePid()
+{
+ ps aux|grep java|grep $program|grep -v grep|awk '{print $2}' > $DATACONTROLLER_TMPDIR/serverPid.temp
+}
+getPid()
+{
+ unset proc_id
+ proc_id=`ps aux|grep java|grep $program|grep -v grep|awk '{print $2}'`
+}
+
+if [ "$1" = "start" ] ; then
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "$name already running......"
+ else
+ "$DATACONTROLLER_HOME"/shell/send_collector.sh
+ [ $? -eq 0 ] && nohup $JAVA_HOME/bin/java $JAVA_OPTS -classpath $DC_CLASSPATH $program >/dev/null &
+ sleep 3
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "$name start success!!!!!"
+ writePid
+ else
+ echo "$name start error!!!!!"
+ fi
+ fi
+elif [ "$1" = "stop" ]; then
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "$name is start, now kill......"
+ kill -15 $proc_id
+ sleep 3
+ writePid
+ echo "$name kill ok !!!!!!!!!!!!!"
+ else
+ echo "$name is not start!!!!!!!!!!!"
+ fi
+elif [ "$1" = "collector" ]; then
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "$name is start, now kill......"
+ kill -15 $proc_id
+ sleep 3
+ writePid
+ echo "$name kill ok !!!!!!!!!!!!!"
+ else
+ echo "$name is not start!!!!!!!!!!!"
+ fi
+elif [ "$1" = "restart" ] ; then
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name is start, now restart......" >> $DATACONTROLLER_TMPDIR/job.log
+ count=1
+ while [ $count -le 3 ]
+ do
+ sleep 1
+ kill -15 $proc_id
+ sleep 1
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name stop error!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ else
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name stop success!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ break
+ fi
+ count=$count+1
+ done
+
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ sleep 1
+ kill -9 $proc_id
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name stop -9 error!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ exit 1
+ fi
+ fi
+
+ else
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name is not start, now start......" >> $DATACONTROLLER_TMPDIR/job.log
+ fi
+
+ #--------copy right, start proc
+ nohup $JAVA_HOME/bin/java $JAVA_OPTS -classpath $DC_CLASSPATH $program >/dev/null &
+ sleep 3
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ writePid
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name restart success!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ else
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name restart error!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ fi
+
+else
+ echo "Usage: oam.sh ( commands ... )"
+ echo "commands:"
+ echo " start Start $name"
+ echo " stop Stop $name"
+ echo " restart ReStart $name in a separate window"
+fi
+
+cd -
diff --git a/gloam/shell/restart.sh b/gloam/shell/restart.sh
new file mode 100644
index 0000000..292dffb
--- /dev/null
+++ b/gloam/shell/restart.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# -----------------------------------------------------------------------------
+# Retart Script for the DataController
+#
+# -----------------------------------------------------------------------------
+
+# resolve links - $0 may be a softlink
+PRG="$0"
+
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`/"$link"
+ fi
+done
+
+PRGDIR=`dirname "$PRG"`
+EXECUTABLE=oam.sh
+
+if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
+ echo "Cannot find $PRGDIR/$EXECUTABLE"
+ echo "This file is needed to run this program"
+ exit 1
+fi
+
+exec "$PRGDIR"/"$EXECUTABLE" restart "$@"
\ No newline at end of file
diff --git a/gloam/shell/send_collector.sh b/gloam/shell/send_collector.sh
new file mode 100644
index 0000000..4872336
--- /dev/null
+++ b/gloam/shell/send_collector.sh
@@ -0,0 +1,71 @@
+#!/bin/bash
+
+basePath="$0"
+
+while [ -h "$basePath" ] ; do
+ ls=`ls -ld "$basePath"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ basePath="$link"
+ else
+ basePath=`dirname "$basePath"`/"$link"
+ fi
+done
+
+basePath=`dirname "$basePath"`
+
+[ -z "$oam_home" ] && oam_home=`cd "$basePath/.." ; pwd`
+cd "$oam_home"/shell
+
+#collector 目的目录
+collector_dest_path=$oam_home/collector
+#collector 源目录
+collector_src_path=$oam_home/conf/collector
+cd $collector_src_path
+#修改configs文件夹下所有.cfg配置文件的pubInfo 中的seqid
+while read line;do
+ eval "$line"
+done < $collector_src_path/config
+index=1
+flag=1
+while [ $flag -eq 1 ]; do
+ key='ip'${index}
+ value=`eval echo '$'${key}`
+ OLD_IFS="$IFS"
+ IFS=","
+ #ip{id}=ip,user,pwd,name,ethname,sort,isMaster
+ value_arr=($value)
+ IFS=$OLD_IFS
+
+ ip=${value_arr[0]}
+ username=${value_arr[1]}
+ password=${value_arr[2]}
+ isMaster=${value_arr[6]}
+ ethname=${value_arr[4]}
+ if [ -z ${value} ];then
+ flag=0
+ else
+ #是本台机器
+ isThis=`ifconfig $ethname | head -2 | tail -n 1 | awk '{print $2}'`
+ echo "index=$index $ip"
+ if [ "${isThis}" == "${ip}" ];then
+ mkdir -p $collector_dest_path/
+ cp -r $collector_src_path/* $collector_dest_path/
+ chmod +x ${collector_dest_path}/*.sh
+ #修改config 的seqid
+ $collector_dest_path/modify_config_seqId.sh
+ else
+
+ $collector_src_path/expect_ssh "$ip" "$username" "$password" "mkdir -p $collector_dest_path"
+ #其它机器发送脚本,修改配置文件
+ $collector_src_path/expect_scp_push "$password" ${collector_src_path}/ "$username@$ip:$oam_home"
+ sleep 1
+ echo 'expect ssh'
+ #给脚本执行权限,修改config seqId
+ $collector_src_path/expect_ssh "$ip" "$username" "$password" "chmod +x ${collector_dest_path}/*.sh;$collector_dest_path/modify_config_seqId.sh"
+ fi
+ let "index++"
+ fi
+done
+#重新返回进入的目录
+cd $basePath
diff --git a/gloam/shell/shutdown.sh b/gloam/shell/shutdown.sh
new file mode 100644
index 0000000..c5cd943
--- /dev/null
+++ b/gloam/shell/shutdown.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# -----------------------------------------------------------------------------
+# Stop Script for the NMS Server
+#
+# -----------------------------------------------------------------------------
+
+# resolve links - $0 may be a softlink
+PRG="$0"
+
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`/"$link"
+ fi
+done
+
+PRGDIR=`dirname "$PRG"`
+EXECUTABLE=oam.sh
+
+if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
+ echo "Cannot find $PRGDIR/$EXECUTABLE"
+ echo "This file is needed to run this program"
+ exit 1
+fi
+
+exec "$PRGDIR"/"$EXECUTABLE" stop "$@"
\ No newline at end of file
diff --git a/gloam/shell/startup.sh b/gloam/shell/startup.sh
new file mode 100644
index 0000000..e982b30
--- /dev/null
+++ b/gloam/shell/startup.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+# -----------------------------------------------------------------------------
+# Start/Stop Script for the NMSSERVER Server
+#
+# Environment Variable Prequisites
+#
+# NMSSERVER_HOME May point at your NMSSERVER "build" directory.
+# -----------------------------------------------------------------------------
+
+# resolve links - $0 may be a softlink
+PRG="$0"
+
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`/"$link"
+ fi
+done
+
+PRGDIR=`dirname "$PRG"`
+
+EXECUTABLE=oam.sh
+
+if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
+ echo "Cannot find $PRGDIR/$EXECUTABLE"
+ echo "This file is needed to run this program"
+ exit 1
+fi
+
+exec "$PRGDIR"/"$EXECUTABLE" start "$@"
diff --git a/gloam/src/com/nis/gloam/config/BaseConfig.java b/gloam/src/com/nis/gloam/config/BaseConfig.java
index d136a4c..d64e5e5 100644
--- a/gloam/src/com/nis/gloam/config/BaseConfig.java
+++ b/gloam/src/com/nis/gloam/config/BaseConfig.java
@@ -10,6 +10,8 @@ import com.jfinal.ext.interceptor.SessionInViewInterceptor;
import com.jfinal.i18n.I18nInterceptor;
import com.jfinal.kit.Prop;
import com.jfinal.kit.PropKit;
+import com.jfinal.kit.StrKit;
+import com.jfinal.log.Log;
import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
import com.jfinal.plugin.cron4j.Cron4jPlugin;
import com.jfinal.plugin.druid.DruidPlugin;
@@ -44,8 +46,15 @@ import com.nis.gloam.entity.SystemService;
import com.nis.gloam.interceptor.CookieInViewInterceptor;
import com.nis.gloam.interceptor.LoginInterceptor;
import com.nis.gloam.interceptor.OperateLogInterceptor;
+import com.nis.gloam.service.NodeTableService;
import com.nis.gloam.task.DetectDataFileReadTask;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.List;
+import java.util.Properties;
import java.util.Timer;
import org.apache.log4j.Logger;
@@ -103,9 +112,7 @@ public class BaseConfig extends JFinalConfig{
Prop cron = PropKit.use("config.properties");
me.add(new Cron4jPlugin(cron));
-
Prop config = PropKit.use("config.properties");
-
DruidPlugin dp = new DruidPlugin(config.get("jdbcUrl"),
config.get("user"),
config.get("password"));
@@ -135,6 +142,8 @@ public class BaseConfig extends JFinalConfig{
arp.addMapping("system_service", SystemService.class);
arp.addMapping("metadata", Metadata.class);
arp.addMapping("config_info", ConfigInfo.class);
+
+
}
@Override
@@ -157,22 +166,47 @@ public class BaseConfig extends JFinalConfig{
@Override
public void afterJFinalStart(){
- /*Timer timer = new Timer();
- LogTimerTask logTimerTask = new LogTimerTask(timer);
- timer.schedule(logTimerTask, 60000);*/
+
+
+ Prop config = PropKit.use("config.properties");
+ String ipinfoFilePath = config.get("ipinfo.config.path","/home/ceiec/oam/collector/config");
+ File infoFile = new File(ipinfoFilePath);
+ if(infoFile.exists() && infoFile.isFile()) {
+ Properties prop = new Properties();
+ try(FileInputStream fis = new FileInputStream(infoFile)){
+ prop.load(fis);
+ } catch (Exception e) {
+ logger.error("加载配置文件失败", e);
+ return;
+ }
+ //首先清空node_table表的数据
+ List nodeList = NodeTable.dao.find("select * from node_table");
+ for(NodeTable n : nodeList) {
+ n.delete();
+ }
+ for(int i = 1;i<5;i++) {
+ String key = "ip" + i;
+ String ipinfo = prop.getProperty(key);
+ if(!StrKit.isBlank(ipinfo)) {
+ String[] infoArr = ipinfo.split(",");
+ NodeTable nt = new NodeTable();
+ nt.set("id", i);
+ nt.set("ip", infoArr[0]);
+ nt.set("user", infoArr[1]);
+ nt.set("pwd", infoArr[2]);
+ nt.set("name", infoArr[3]);
+ nt.set("ethName", infoArr[4]);
+ nt.set("sort", Integer.valueOf(infoArr[5]));
+ if(infoArr.length > 6) {
+ nt.set("isMaster", infoArr[6]);
+ }
+ nt.save();
+ }
+ }
+ }
+
Timer timer = new Timer();
timer.schedule(new DetectDataFileReadTask(timer), 2000);
logger.info("文件定时读取任务启动");
-
-// Common.shellExcutePool.submit(new Runnable() {
-// @Override
-// public void run() {
-// long start=System.currentTimeMillis();
-// LinuxUtil.initBlack();
-// long end=System.currentTimeMillis();
-// logger.info("初始化黑名单完成,用时:"+(end-start)/1000+"s");
-// }
-// });
-
}
}
diff --git a/gloam/src/com/nis/gloam/controller/ConfigController.java b/gloam/src/com/nis/gloam/controller/ConfigController.java
index 0c0fd11..f080387 100644
--- a/gloam/src/com/nis/gloam/controller/ConfigController.java
+++ b/gloam/src/com/nis/gloam/controller/ConfigController.java
@@ -131,20 +131,21 @@ public class ConfigController extends Controller {
});
}
- parseArray.get(0).setTableServerName(serverDto.get("name"));
+ parseArray.get(0).setTableServerName((String)serverDto.get("name"));
for (DeviceInfoBean i : parseArray) {
logger.info("i =================" + i.getManageAddr());
if (i.getManageAddr().equals(serverDto.get("ip"))) {
logger.info("匹配上通信ip信息");
i.setMasterFlag(1);
- i.setNodeTableId(serverDto.get("id"));
+ Integer id = serverDto.get("id");
+ i.setNodeTableId(id);
} else {
i.setMasterFlag(0);
}
}
- datas.put(serverDto.get("ip"), parseArray);
+ datas.put((String) serverDto.get("ip"), parseArray);
} else {
- datas.put(serverDto.get("ip"), null);
+ datas.put((String) serverDto.get("ip"), null);
}
}
}
diff --git a/gloam/src/com/nis/gloam/controller/DeviceController.java b/gloam/src/com/nis/gloam/controller/DeviceController.java
index 6d1ac6a..c8fc22b 100644
--- a/gloam/src/com/nis/gloam/controller/DeviceController.java
+++ b/gloam/src/com/nis/gloam/controller/DeviceController.java
@@ -27,12 +27,12 @@ public class DeviceController extends Controller {
Logger logger=Logger.getLogger(DeviceController.class);
NodeTableService nodeService = new NodeTableService();
- Deque nodes = nodeService.getAllNodes();
+ final Deque nodes = nodeService.getAllNodes();
- SystemServiceService sss=new SystemServiceService();
- ProcessInfoService procService=new ProcessInfoService();
+ final SystemServiceService sss=new SystemServiceService();
+ final ProcessInfoService procService=new ProcessInfoService();
- List