- 论坛徽章:
- 0
|
#获取系统的监控数据
lv_type="sys"
host_name="`hostname"
os_type="`uname -s"
lv_max=6
lv_index=0
start_time="`date +%y%m%d%H%M%S"
dir_name=${host_name}-${lv_type}-20${start_time}
##################################################################
#-- 创建目录,并转到新生成的目录中
rm -rf ${HOME}/tmp/${dir_name}
mkdir -p ${HOME}/tmp/${dir_name}
cd ${HOME}/tmp/${dir_name}
##################################################################
#-- 获取计算机系统的基本信息,包含主机名、操作系统版本、机型等
uname -a >; uname.log
if [ ${os_type} = "HP-UX" ]
then
#-- 显示系统的资源信息,包含io设备、cpu、mem
dmesg >; dmesg.log
#-- 显示和系统相连的硬件设备及状态是否可用,包含io设备、cpu、mem
ioscan -f >; ioscan.log
#-- 查看文件系统(物理卷、卷组、逻辑卷)的空间信息
vgdisplay -v >; vgdisplay.log
#-- 查看文件系统的空间使用情况
bdf >; bdf.log
#-- 查看Swap交换空间的使用情况
swapinfo >; swapinfo.log
#-- 显示部分核心参数的信息
sysdef >; sysdef.log
##################################################################
#-- 记录目前的网络流量
time1="`date +%y%m%d%H%M%S"
echo 20${time1} >; netstat.log
echo "\n\n\n------start net flow information\n\n" >;>; netstat.log
netstat -sv >;>; netstat.log
##################################################################
fi
if [ ${os_type} = "SCO_SV" ]
then
##################################################################
#-- 显示系统的swap交换区大小
swap -l >; swap.log
##################################################################
##################################################################
#-- 获取核心参数的信息
sysdef >; sysdef.log
cp /etc/conf/cf.d/mtune .
cp /etc/conf/cf.d/stune .
##################################################################
##################################################################
#-- 获取系统的文件系统使用情况的信息
df -k >; df_k.log
##################################################################
fi
if [ ${os_type} = "AIX" ]
then
##################################################################
#-- 显示系统的设备名称
lsdev -C >;>; lsdev.log
##################################################################
##################################################################
#-- 获取系统的文件系统描述文件
cp /etc/filesystems .
##################################################################
##################################################################
#-- 获取系统的逻辑卷,卷组,物理磁盘,文件系统使用情况的信息
lsdev -C |grep "Logical volum"|grep hd >; tmp.out
cut -d" " -f1 tmp.out >; tmp1.out
for lvinfo in `cat tmp1.out`
do
lslv -L ${lvinfo} >; lvinfo_${lvinfo}.log
done
lsvg >; tmp.out
for vginfo in `cat tmp.out`
do
lsvg -L ${vginfo} >; vginfo_${vginfo}.log
done
lspv >; tmp.out
cut -d" " -f1 tmp.out >; tmp1.out
for pvinfo in `cat tmp1.out`
do
lspv -L ${pvinfo} >; pvinfo_${pvinfo}.log
done
df -k >; df_k.log
lsfs >; fsinfo.log
rm -f tmp.out tmp1.out
##################################################################
fi
##################################################################
##################################################################
#-- 记录CPU,虚拟内存,磁盘读写的数据
if [ ${os_type} = "HP-UX" ]
then
sar -o sar.log -AM 2 3
else
sar -o sar.log -A 2 3
fi
vmstat 2 3 >; vmstat.log
if [ ! ${os_type} = "SCO_SV" ]
then
iostat 5 1 >; iostat.log
fi
##################################################################
##################################################################
#-- 记录进程的运行数据
lv_index=0
while true
do
if [ ${os_type} = "HP-UX" ]
then
echo "\n\n###################### ps log${lv_index} information #######################" >;>; ps.log
ps -edafl >;>; ps.log
else
#用户名 进程号 父进程号 组名 终端号 执行时间 通讯时间 优先级 占用cpu百分比 占用内存数 执行命令
ps -eo "user pid ppid group tty etime time nice pcpu vsz comm" | grep -v root >;>; ps.log
fi
lv_index=`expr ${lv_index} + 1`
if [ ${lv_index} -eq ${lv_max} ]
then
break;
fi
sleep 1
done
##################################################################
if [ ${os_type} = "HP-UX" ]
then
##################################################################
#-- 记录目前的网络流量
time1="`date +%y%m%d%H%M%S"
echo "\n\n\n------end net flow information\n\n" >;>; netstat.log
echo 20${time1} >;>; netstat.log
echo "" >;>; netstat.log
netstat -sv >;>; netstat.log
##################################################################
fi
cd ../
tar cf ${dir_name}.tar ${dir_name}
compress ${dir_name}.tar
rm -rf ${dir_name}
#chmod 777 ${dir_name}.tar.Z |
|