init import

This commit is contained in:
bsdbc
2019-04-02 09:52:52 +08:00
parent 48f09fa63d
commit 4f1a03aeb9
122 changed files with 23956 additions and 0 deletions

Binary file not shown.

View File

@@ -0,0 +1,38 @@
##Driver
#druid.driverClassName=com.mysql.jdbc.Driver
##数据库链接,
#druid.url=jdbc:mysql://192.168.0.37:3306/project_demo?useUnicode=true&characterEncoding=UTF-8
##帐号
#druid.username=root
##密码
#druid.password=xxxx
#检测数据库链接是否有效,必须配置
druid.validationQuery=SELECT 1 from dual
#初始连接数
druid.initialSize=3
#最大连接池数量
druid.maxActive=10
#去掉,配置文件对应去掉
#druid.maxIdle=20
#配置0,当线程池数量不足,自动补充。
druid.minIdle=3
#获取链接超时时间为1分钟单位为毫秒。
druid.maxWait=60000
#获取链接的时候,不校验是否可用,开启会有损性能。
druid.testOnBorrow=false
#归还链接到连接池的时候校验链接是否可用。
druid.testOnReturn=false
#此项配置为true即可不影响性能并且保证安全性。意义为申请连接的时候检测如果空闲时间大于timeBetweenEvictionRunsMillis执行validationQuery检测连接是否有效。
druid.testWhileIdle=true
#1.Destroy线程会检测连接的间隔时间
#2.testWhileIdle的判断依据
druid.timeBetweenEvictionRunsMillis=600000
#一个链接生存的时间
druid.minEvictableIdleTimeMillis=600000
#链接使用超过时间限制是否回收
druid.removeAbandoned=false
#超过时间限制时间单位秒目前为5分钟如果有业务处理时间超过5分钟可以适当调整。
druid.removeAbandonedTimeout=300
#链接回收的时候控制台打印信息测试环境可以加上true线上环境false。会影响性能。
druid.logAbandoned=false
druid.filters=

View File

@@ -0,0 +1,2 @@
-Xms64m
-Xmx128m

View File

@@ -0,0 +1,28 @@
log4j.rootLogger = debug,stdout,logfile,errorLog
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout.ConversionPattern = %d %p [%l] [%t] - <%m>%n
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
#----------------------debug---------------------
log4j.appender.logfile = org.apache.log4j.RollingFileAppender
log4j.appender.logfile.MaxFileSize = 50MB
log4j.appender.logfile.MaxBackupIndex = 10
log4j.appender.logfile.File = ../dc_logs/datacontroller.log
log4j.appender.logfile.layout.ConversionPattern = %d %p [%l] [%t] - <%m>%n
log4j.appender.logfile.layout = org.apache.log4j.PatternLayout
#----------------------error---------------------
log4j.logger.errorLog = warn,errorLog
log4j.appender.errorLog = org.apache.log4j.RollingFileAppender
log4j.appender.errorLog.MaxFileSize = 50MB
log4j.appender.errorLog.Append = true
log4j.appender.errorLog.Threshold = warn
log4j.appender.errorLog.MaxBackupIndex = 10
log4j.appender.errorLog.File = ../dc_logs/error.log
log4j.appender.errorLog.layout.ConversionPattern = %d %p [%l] [%t] - <%m>%n
log4j.appender.errorLog.layout = org.apache.log4j.PatternLayout

View File

@@ -0,0 +1,287 @@
#--------need modify -----------begin
##--公共数据存放父目录(*部署需修改*
common.datas.dir =
##--系统SNMP监测指定服务器IP 指本机(*部署需修改*
system.inet.address =
##--NMSWeb端 通讯IP 指WEB*部署需修改*
web.socket.ip =
#--数据库驱动
#db.driver=oracle.jdbc.driver.OracleDriver
db.driver=com.mysql.jdbc.Driver
##--数据库 地址(*部署需修改*
#db.url = jdbc:oracle:thin:@10.0.6.100:1521:ict
db.url =
##--数据库 用户名(*部署需修改*
#db.username = nms
db.username =
##--数据库 密码(*部署需修改*
#db.password = nms
db.password =
#数据库类型
db.type=mysql
#--------need modify -----------end
#-------- DB pool -----------begin
db.pool.type=druid
##--##--连接池 设置分区 缺省值 3 一般设置为3~4
db.pool.partitionCount = 3
##--设置每个分区中的最大连接数 缺省值 10 注意 此处问每个分区最大线程数 总数为 partitionCount*maxConnectionsPerPartition 即 30
db.pool.maxConnectionsPerPartition = 20
##--设置每个分区中的最小连接数 缺省值 5 注意 此处问每个分区最小空闲线程数 总数为 partitionCount*minConnectionsPerPartition 即 15
db.pool.minConnectionsPerPartition = 3
##--当连接池中的连接耗尽的时候 BoneCP一次同时获取的连接数 缺省值3
db.pool.acquireIncrement = 3
#-------- DB pool -----------end
#------- Email ---------begin
##--邮件发送标识1启用、0禁用
email.flag = 0
##--邮件通知 发送 用户地址(*部署需修改*
email.address =
##--邮件通知 发送 用户名(*部署需修改*
email.userName =
##--邮件通知 发送 用户密码(*部署需修改*
email.password =
##--邮件服务器IP*部署需修改*
email.host =
#------- Email ---------end
##--NMSWeb端 通讯服务监听端口
web.socket.port = 60703
#---Common-------
##--分中心执行自身范围内client的任务0 关闭 1开启
mission.single = 1
##--全局文本解析编码与web端、Agent端一致不可修改
common.text.coding = UTF-8
##--全局日期格式化方式,须与数据库 日期数据格式化方式db.date.format保持一致不建议修改
common.date.format = yyyy-MM-dd HH:mm:ss
##--NMSServer升级时通讯中断延时恢复时间
mission.update.daily = 300
##--最大网络带宽限制Mbps
max.network.bandwidth = 5
#-------Executor Thread---------
##--公用普通线程池预置线程数(个)
executor.socket.thread.size = 120
##--公用定时线程池预置线程数(个)
executor.scheduled.thread.size = 30
##--数据解析线程预置线程数(个)
executor.data.resove.thread.size = 3
#---Change Operations-------
##--监测、任务、节点等状态及设置信息变更时,执行变更操作的线程,轮询周期(秒)
change.operations.period = 300
change.release.semaphore.max = 10
#------- Detection Alarm ---------
##--主动监测执行通讯并发数(个)
detec.release.semaphore.max = 20
#------- Detection Resolve ---------
##--缓存监测数据解析周期(秒)
detec.data.resovle.period = 60
##--硬盘监测数据解析周期(秒)
##--DC端主动收集数据监测数据、任务结果、回传文件周期应该比生成监测数据的间隔时间小不要web页面会有段时间报警说缺失一个周期的监测数据而实际是你还没去收集5分钟
data.collect.period = 300
##--DC端主动收集数据(执行完成,但无任务结果的任务的结果信息)(大于等于正常收集任务结果的周期data.collect.period的2倍)
nonRltTask.result.collect.period = 600
##--告警数据解析周期(秒)
alarm.data.resovle.period = 60
####common.file.resovle.period unable
##--PING监测类别标识用于查询数据库中预置PING监测设置的监测类别标识须与数据库PING监测类别名称一致默认不可修改
detec.ping.str = PING
##--NMSC监测类别标识用于查询数据库中预置PING监测设置的监测类别标识须与数据库NMSClient监测类别名称一致默认不可修改
detec.nmsc.str = NMSClient
##--SNMP监测类别标识用于查询数据库中预置SNMP监测设置的监测类别标识不可修改
detec.snmp.str = SNMP
##--SNMP_SWITCH监测类别标识用于查询数据库中预置SWITCH监测设置的监测类别标识不可修改
detec.switch.str = SWITCHPORT
##--systeminfo监测类别解析标识特有解析方法用于查询数据库中预置systeminfo监测设置的监测类别标识不可修改
detec.systeminfo.str = systeminfo
##--SNMP_TRAP监测类别标识用于查询数据库中预置SNMP_TRAP监测设置的监测类别标识不可修改
alarm.snmp.trap.str = SNMP_TRAP
#---Mission Control-------
##--周期任务执行时,预置周期的数量(个)
mission.loop.preset.number = 10
##--周期任务执行时,默认检查时间(暂未使用)
mission.loop.finishing.daily = 20:00:00
#---Mission release-------
##--任务执行,节点下发通讯并发数(个)
mission.release.semaphore.max = 10
##--任务执行,重复尝试次数(次)
mission.release.times = 2
##--任务执行,重复下发间隔周期(秒)
mission.release.period = 180
#---Mission File-------
##--从WEB端下载任务文件的线程的超时时间
mission.file.download.delay = 20
##--上传到WEB端的回传文件线程执行周期
mission.file.upload.period = 120
##--数据库 日期格式化方式 须与全局日期格式化方式common.date.format保持一致不建议修改
db.date.format = yyyy-MM-dd HH24:mi:ss
##--数据库 批处理 最大数
db.execute.batch = 100
#---SNMP-------
##--SNMP 目标主机信息 获取端口
snmp.client.port = 161
##--SNMP 接收告警 监听端口
snmp.trap.port = 162
##--SNMP 主动告警 接收端口
snmp.community = public
##--ObjectSNMP class文件打包名称不可修改
snmp.class.package = osDomains
##--SNMP 加密认证级别 0 不认证 不加密'zg' 1 认证 不加密'hckings' ,2认证 且 加密'dxy'
snmp.v3.security.level = 0
##--SNMP 加密认证用户 用户名
snmp.v3.security.name = zg
##--SNMP 认证协议方式
snmp.v3.auth.protocol = MD5
##--SNMP 加密协议方式
snmp.v3.priv.protocol = DES
##--SNMP 认证密码明文
snmp.v3.auth.passphrase = 12345678
##--SNMP 加密密码明文
snmp.v3.priv.passphrase = 12345678
#---SSL-------
##--SSL通讯 密匙类型(不可修改)
ssl.type = TLS
##--SSL通讯 密匙文件存放目录默认为打包程序工程目录下cer不建议修改
ssl.dir = cer
##--SSL通讯 密匙有效期(暂未使用)
ssl.key.validity = 90
##--SSL通讯 Server端 通讯监听端口须与WEB端、Agent端通讯发送端口保持一致不建议修改
ssl.server.port = 60702
##--SSL通讯 Agent端 通讯发送端口须与Agent端 通讯监听端口保持一致(不建议修改)
ssl.client.port = 60701
##--SSL通讯 密匙库类型(不可修改)
ssl.keystore.type = jceks
##--SSL通讯 Server端 私钥库名称
ssl.server.store = server_ks
##--SSL通讯 Server端 公钥库名称
ssl.server.trust = server_ts
##--SSL通讯 Agent端 私钥库名称 与Agent端保持一致预留
ssl.client.store = client_ks
##--SSL通讯 Agent端 公钥库名称 与Agent端保持一致预留
ssl.client.trust = client_ts
##--SSL通讯 Server端 私钥库密码
ssl.server.store.psw = client
##--SSL通讯 Server端 公钥库密码(预留)
ssl.server.trust.psw = client
##--SSL通讯 Server端 公钥导出文件名称(预留)
ssl.server.export = server.cer
##--SSL通讯 Agent端 公钥导出文件名称(预留)
ssl.client.export = client.cer
##--SSL通讯 Server端 旧密钥名称(预留)
ssl.server.key.old = serverks20110828
##--SSL通讯 Server端 旧密钥密码(预留)
ssl.server.key.old.psw = 123456
##--SSL通讯 Server端 新密钥名称(预留)
ssl.server.key.new = serverks20110828
##--SSL通讯 Server端 新密钥密码(预留)
ssl.server.key.new.psw = 123456
##--SSL通讯 Agent端 密钥名称(预留)
ssl.client.key = serverks20110828
##--SSL通讯 Agent端 密钥密码(预留)
ssl.client.key.psw = 123456
#-----------debug------------
##--ZIP 解析线程标识 启用标识1启用、0禁用
zip.flag = 1
##--监测结果接收超时 启用标识1启用、0禁用
detec.timeout.flag = 1
##--文件上传功能 启用标识1启用、0禁用
file.upload.flag = 1
##--监测数据解析功能 启用标识1启用、0禁用
file.resove.flag = 1
##--数据主动收集功能 启用标识1启用、0禁用
data.collect.flag = 0
##--执行完成,但无任务结果的任务的结果信息的收集标志 启用标识1启用、0禁用
nonRltTask.result.collect.flag = 1
##--告警解析功能 启用标识1启用、0禁用
alarm.resove.flag = 1
##--变更操作功能 启用标识1启用、0禁用
change.operations.flag = 1
##--主动监测PING功能 启用标识1启用、0禁用
ping.flag = 1
##--主动监测NMSClient功能 启用标识1启用、0禁用
nmsc.flag = 1
##--主动监测SNMP功能 启用标识1启用、0禁用
snmp.flag = 1
##--主动监测交换机功能 启用标识1启用、0禁用
switch.flag = 1
##--trap功能 启用标识1启用、0禁用
trap.flag = 1
##--初始化任务执行功能 启用标识1启用、0禁用
mission.flag = 1
##--任务结果解析功能 启用标识1启用、0禁用
result.flag = 1
##--邮件发送功能 启用标识1启用、0禁用
email.start.flag = 1
#-----------debug 2------------
##--监测数据文件解析 保存到数据库操作标识1启用、0禁用
file.resove.commitDB.flag = 1
delete.files.flag = 1
config.update.flag = 8
delete.files.period = 24
mailing.period = 120
keep.file.days = 7
#硬盘监测数据入库线程开关
data.files.reader.flag = 1
error.info.flag = 1
detec.system.str = system
#握手监测失败时state=-1默认的告警级别0级
detect.fail.nmsc.police.level=0
#握手监测失败时state=-1默认的紧急状态0紧急1非紧急
detect.fail.nmsc.police.emergent=0
#非握手监测失败时state=-1默认的告警级别1-5级
detect.fail.non.nmsc.police.level=1
#非握手监测失败时state=-1默认的紧急状态0紧急1非紧急
detect.fail.non.nmsc.police.emergent=1
#端口异常流量为0设置状态和实际状态不符默认的告警级别:1-5级
port.alarm.level=5
#端口异常流量为0设置状态和实际状态不符默认的紧急状态:0紧急1非紧急
port.alarm.emergent=1
#NC主动告警默认为紧急state=-2时默认的告警级别:0级
nc.alarm.police.level=0
#DC端主动监测单节点超时时间
single.node.detect.timeout=180
#监测数据每500条入库一次
detection_info_data_max_rows =500
data.collect.daily=120
#dc监测数据入库模式1由web 主控控制入库2自己主动入库3智能模式1和2结合4写入文件定时上传web端
detect.insert.mode=2
############ 多线程入库监测数据 ################
#监测数据入库线程模式1单线程2多线程info,detail
detect.insert.thread.mode=2
#info入库线程运行模式1每隔 n秒 运行一次2间隔 n 秒运行一次
detect.info.thread.mode=2
#info入库线程 每隔 或间隔 时间 单位s
detect.info.thread.time=60
detect.info.thread.delay=5
#detail入库线程运行模式1每隔 n秒 运行一次2间隔 n 秒运行一次
detect.detail.thread.mode=1
#detail入库线程 每隔 或间隔 时间 单位s
detect.detail.thread.time=60
detect.detail.thread.delay=5
############ 多线程入库监测数据 ################
############## netty ######################
##--dc 接收nc主动上报 监测数据任务结果任务回传文件1启用、0禁用启用时要同时将data.collect.flag 置为 0
netty.server.flag=1
netty.server.port=9527
netty.server.ssl=true
#client 空闲时间单位s设置比client 心跳时间大一点判断nc 是否在线
netty.idle.time=15
netty.so.backlog=128
#代码生成序列0 关闭默认为detection_info表如多个表需要添加序列多个表名用隔开
sequence.table=0

View File

@@ -0,0 +1,281 @@
#!/bin/bash
DEFAULT_DATA_DIR="/home/ceiec/nms/nmsdata"
DEFAULT_INSTALL_DIR="/home/ceiec/nms/datacontroller"
# --- set install dir
PRG="$0"
PRGDIR=`dirname "$PRG"`
CUR_PRGDIR=`cd "$PRGDIR"; pwd`
if [ $# = 0 ]
then
echo -n "enter intall dir [default: $DEFAULT_INSTALL_DIR]:"
read INSTALL_DIR
if [ -z "$INSTALL_DIR" ]; then
INSTALL_DIR="$DEFAULT_INSTALL_DIR"
fi
else
INSTALL_DIR="$1"
fi
if [ ! -d $INSTALL_DIR ]
then
mkdir -p $INSTALL_DIR
fi
INSTALL_DIR=`cd "$INSTALL_DIR"; pwd`
# --- check jdk and jdk-version
install_jdk=0
javaversion=`java -version 2>&1|grep "java version"`
if [ -n "$javaversion" ]
then
# javaversion=${javaversion:14:3}
javavmajor=`echo $javaversion | cut -c15`
javavminor=`echo $javaversion | cut -c17`
# OS_TYPE=$( lsb_release -d| cut -d: -f2| cut -f2 )
# if [ "`echo $OS_TYPE | cut -c1-6`" = "Ubuntu" ]
# then
# if [ 2 -gt $javavmajor ]; then
# if [ 6 -gt $javavminor ]; then
# install_jdk=1
# fi
# fi
# else
if [[ 2 -gt $javavmajor && 6 -gt $javavminor ]]; then
install_jdk=1
fi
# fi
else
install_jdk=1
fi
# --- install jdk
cd "$INSTALL_DIR"/..
NMS_JDK="$(pwd)/nmsjdk"
JDK_DIR="$(pwd)/jre1.7.0_80"
JDK_BIN_FILE=$CUR_PRGDIR"/jre_install/jre-7u80-linux-i586.tar.gz"
if [ "`uname -i`" = "x86_64" ];then
JDK_BIN_FILE=$CUR_PRGDIR"/jre_install/jre-7u80-linux-x64.tar.gz"
fi
if [ $install_jdk = 1 ]
then
if [ ! -e "$NMS_JDK" ]
then
echo "JDK bin file: $JDK_BIN_FILE"
echo "now, install jdk: $JDK_DIR"
sleep 3
if [ ! -e "$JDK_DIR" ];then
mkdir -p $JDK_DIR
fi
tar -xzf $JDK_BIN_FILE -C $JDK_DIR --strip-components=1 || installJdk=1
if [ -n "$installJdk" ];then
echo "install jdk failure, exit program"
exit 1
fi
ln -s $JDK_DIR $NMS_JDK
echo "install jdk done"
fi
elif [ -n "$JAVA_HOME" ];then
ln -s $JAVA_HOME $NMS_JDK
else
echo "JDK bin file: $JDK_BIN_FILE"
echo "now, install jdk: $JDK_DIR"
sleep 3
if [ ! -e "$JDK_DIR" ];then
mkdir -p $JDK_DIR
fi
tar -xzf $JDK_BIN_FILE -C $JDK_DIR --strip-components=1 || installJdk=1
if [ -n "$installJdk" ];then
echo "install jdk failure, exit program"
exit 1
fi
ln -s $JDK_DIR $NMS_JDK
echo "install jdk done"
fi
cd "$CUR_PRGDIR"
echo "==========================================="
echo "NMS_JDK: $NMS_JDK"
echo "INSTALL_DIR: $INSTALL_DIR"
echo "==========================================="
# --- copy file to install_dir
if [ "$INSTALL_DIR" == "$CUR_PRGDIR" ]
then
echo "install directory is current program directory..."
else
echo "install program, it may take a few time..."
CP_DIR=(
bin
lib
conf
shell
)
#cp
for CP_NAME in ${CP_DIR[@]}
do
echo $CP_NAME
cp -a $CUR_PRGDIR"/$CP_NAME" $INSTALL_DIR
done
fi
function modify_file(){
if [ $# != 2 ]
then
echo "usage: modify_file [prop_name] [prop_value]"
exit 0
fi
prop_name="$1"
prop_value="$2"
#echo "modify_file $prop_name $prop_value"
if [ -z "$(cat $PROP_FILE |grep $prop_name)" ]
then
echo "" >> $PROP_FILE
echo "$prop_name=$prop_value" >> $PROP_FILE
else
sed -i "s|^$prop_name.*|$prop_name=$prop_value|" $PROP_FILE
fi
}
enter_password=""
function readPasswd(){
enter_password=""
stty -echo cbreak
while true
do
character=$(dd if=/dev/tty bs=1 count=1 2> /dev/null)
case $character in
$(echo -e "\n"))
break
;;
$(echo -e "\b"))
if [ -n "$enter_password" ]; then
echo -n -e "\b \b"
enter_password=$(echo "$password" | sed 's/.$//g')
fi
;;
*)
enter_password=$enter_password$character
echo -n '*'
;;
esac
done
stty -cbreak echo
echo ""
}
# modify property
PROP_FILE=$INSTALL_DIR"/conf/myconfig.properties"
#echo "PROP_FILE: $PROP_FILE"
#-------------data dir
echo -n "enter data dir [default $DEFAULT_DATA_DIR]: "
read data_path
if [ -z "$data_path" ]
then
data_path="$DEFAULT_DATA_DIR"
fi
#-------------local ip
echo -n "enter local ip: "
read local_ip
while [ -z "$local_ip" ]
do
echo -n "local ip cannot null, please enter local ip: "
read local_ip
done
#-------------nmsweb ip
echo -n "enter nmsweb ip: "
read nmsweb_ip
while [ -z "$nmsweb_ip" ]
do
echo -n "nmsweb ip cannot null, please enter nmsweb ip: "
read nmsweb_ip
done
#-------------db url
#echo -n "enter database url: "
#read db_url
#while [ -z "$db_url" ]
# do
# echo -n "database url cannot null, please enter database url: "
# read db_url
#done
#2018-08-26 修改url为只传host和port默认3306拼接完成后赋值给db.url
DBPORT=3306
#-------------db host
echo -n "enter database host:"
read db_host
while [ -z "$db_host" ]
do
echo -n "database host cannot null,please enter database host:"
read db_host
done
#-------------db port
echo -n "enter database port[default port 3306]:"
read db_port
if [ -z "$db_port" ]
then
db_port="$DBPORT"
fi
#-----------db url
db_url="jdbc:mysql://"${db_host}":"${db_port}"/nms?useUnicode=true\&characterEncoding=utf-8\&useOldAliasMetadataBehavior=true\&rewriteBatchedStatements=true"
#-------------db username
echo -n "enter database username: "
read db_username
while [ -z "$db_username" ]
do
echo -n "database username cannot null, please enter database username: "
read db_username
done
#-------------db password
echo -n "enter database password: "
readPasswd
db_passwd="$enter_password"
while [ -z "$db_passwd" ]
do
echo -n "database password cannot null, please enter database password: "
readPasswd
db_passwd="$enter_password"
done
#-------------log4j dir
echo -n "enter logs path [default $data_path/dc_logs]: "
read logs_path
if [ -z "$logs_path" ]
then
logs_path="$data_path/dc_logs"
fi
modify_file "common.datas.dir" $data_path
modify_file "system.inet.address" $local_ip
modify_file "web.socket.ip" $nmsweb_ip
modify_file "db.url" $db_url
modify_file "db.username" $db_username
modify_file "db.password" $db_passwd
# modify log4j
PROP_FILE=$INSTALL_DIR"/conf/log4j.properties"
encoding=${LANG#*.}
modify_file "log4j.appender.stdout.encoding" $encoding
modify_file "log4j.appender.debugAppender.encoding" $encoding
modify_file "log4j.appender.infoAppender.encoding" $encoding
modify_file "log4j.appender.debugAppender.File" "$logs_path/datacontroller_debug.log"
modify_file "log4j.appender.infoAppender.File" "$logs_path/datacontroller_info.log"
#permit
cd $INSTALL_DIR"/shell"
chmod 755 *.sh
cd $CUR_DIR
if [ -z "$(cat /etc/rc.local|grep $INSTALL_DIR"/shell/startup.sh")" ]
then
echo $INSTALL_DIR"/shell/startup.sh" >> /etc/rc.local
fi
echo "install successed..."
echo "please use [$INSTALL_DIR/shell/startup.sh] to run the program..."

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,197 @@
#!/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
# -------- check jdk
# check nmsjdk
NMS_HOME=`cd "$DATACONTROLLER_HOME/.." ; pwd`
cd "$DATACONTROLLER_HOME"/shell
NMS_JDK="$NMS_HOME"/nmsjdk
if [ ! -e "$NMS_JDK" ]
then
echo "$NMS_JDK not exist"
exit 0
fi
# check java -version
javaversion=`$NMS_JDK/bin/java -version 2>&1|grep "java version"`
if [ ! -n "$javaversion" ]
then
echo "$NMS_JDK cannot use, please install"
exit 0
fi
# -------- set jdk path
export JAVA_HOME=$NMS_JDK
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH
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 DATACONTROLLER_HOME: $DATACONTROLLER_HOME"
echo "Using DATACONTROLLER_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
program="com.nms.server.DataController"
name="DataController"
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
nohup 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" = "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 $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: datacontroller.sh ( commands ... )"
echo "commands:"
echo " start Start $name"
echo " stop Stop $name"
echo " restart ReStart $name in a separate window"
fi
cd -

View File

@@ -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=datacontroller.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 "$@"

View File

@@ -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=datacontroller.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 "$@"