一个通用shell脚本,用来收集一些常用的主机运行状态信息

#!/bin/bash
if [ -f ~/.bash_profile ];
then
  . ~/.bash_profile
fi

pid=`pgrep -f platform`

echo `date "+%Y-%m-%d %H:%M:%S"`"-信息采集报告:" >> /temp/info.txt



echo " " >> /temp/info.txt
echo " " >> /temp/info.txt


echo "进程内存占用:" >> /temp/info.txt
ps -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' -p $pid >> /temp/info.txt

echo " " >> /temp/info.txt
echo " " >> /temp/info.txt

echo "进程线程数:" >> /temp/info.txt
ps -mp $pid -o THREAD,tid,time|wc >> /temp/info.txt

echo " " >> /temp/info.txt
echo " " >> /temp/info.txt


echo "网络链接数:" >> /temp/info.txt
netstat -na|grep 8480 | awk '/^tcp/ {++S[$NF]} END {for (a in S) print a, S[a]}' >> /temp/info.txt

echo " " >> /temp/info.txt
echo " " >> /temp/info.txt


echo "数据库链接数:" >> /temp/info.txt
netstat -na|grep 3306|wc -l >> /temp/info.txt

echo " " >> /temp/info.txt
echo " " >> /temp/info.txt


echo "线程堆栈信息:" >> /temp/info.txt 
jstack $pid >> /temp/info.txt

echo " " >> /temp/info.txt
echo " " >> /temp/info.txt

echo "文件句柄数信息:" >> /temp/info.txt
lsof -p $pid |wc -l >> /temp/info.txt

echo " " >> /temp/info.txt
echo " " >> /temp/info.txt
echo " " >> /temp/info.txt
echo " " >> /temp/info.txt
echo " " >> /temp/info.txt
echo " " >> /temp/info.txt

0 条评论

发表回复

Avatar placeholder

您的邮箱地址不会被公开。 必填项已用 * 标注