#!/bin/bash -type mysql > /dev/nullif [ $? -eq 1 ];then VERSION_ID=`rpm -q centos-release|cut -d- -f3` if [ ${VERSION_ID} -eq 6 ];then rpm -ivh http://repo.mysql.com/mysql57-community-release-el6-11.noarch.rpm yum install -y mysql-community-common mysql-community-libs mysql-community-libs-compat postfix rpm -ivh https://repo.mysql.com/yum/mysql-5.7-community/el/6/x86_64/mysql-community-client-5.7.29-1.el6.x86_64.rpm elif [ ${VERSION_ID} -eq 7 ];then rpm -ivh http://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm yum install -y mysql-community-common mysql-community-libs mysql-community-libs-compat postfix rpm -ivh http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql-community-client-5.7.29-1.el7.x86_64.rpm else echo "Please install mysql-client first!" exit fifitype mysql > /dev/nullif [ $? -eq 1 ];then echo "Please install mysql-client first!" exitfiHOSTNAME=`hostname`DB_HOST="ip"DB_USER="user"export MYSQL_PWD="pasword"DB_NAME="by_monitor"MYSQL_CONN="mysql -h${DB_HOST} -u${DB_USER} ${DB_NAME} -N -e"BY_SERVICE=`${MYSQL_CONN} 'select service_name from by_service;'` > /dev/null 2>&1DEPLOY_DIR="/opt/www"for PID in `ps -ef|grep java|grep -v "grep"|awk '{print $2}'`do SERVICE=`pwdx ${PID}|grep "${deploy_dir}"|grep -v "grep"|awk '{print $2}'|awk -F'/' '{print $4}'` echo ${BY_SERVICE}|tr ' ' '\n'|grep -x ${SERVICE} > /dev/null 2>&1 if [ $? -eq 0 ];then main_jar="${DEPLOY_DIR}/${SERVICE}/work/lib/${SERVICE}-3.0.0.jar" if [ -f ${main_jar} ];then main_jar_md5=`md5sum ${main_jar}|cut -d' ' -f1` main_jar_mtime=`stat ${main_jar}|grep "Modify"|awk -F'[ .]' '{print $2" "$3}'` else main_jar_md5="" main_jar_mtime="" fi #ps -o pid,%cpu,rsz,etime -p ${PID} service_mem=`ps -o rsz -p ${PID}|tail -n 1` service_cpu=`ps -o pcpu -p ${PID}|tail -n 1|cut -d' ' -f2` service_elapsed=`ps -o etime -p ${PID}|tail -n 1|awk '{print $1}'` service_start=`ps -o lstart -p ${PID}|tail -n 1|xargs -I {} date -d"{}" +'%F %T'` ${MYSQL_CONN} "replace into by_running(host_name,service_name,service_cpu,service_mem,start_time,update_time,service_elapsed,main_jar_md5,main_jar_mtime) values(\"${HOSTNAME}\",\"${SERVICE}\",${service_cpu},${service_mem},\"${service_start}\",now(),\"${service_elapsed}\",\"${main_jar_md5}\",\"${main_jar_mtime}\");" fidone