Jump to content
Калькуляторы

CPU monitoring freebsd CPU monitoring freebsd

Всем привет,

люди подскажите или ткните носом где почитать:

нужно снять загрузку CPU в % по ядрам и слить это через bsnmpd в коллектор ( или на коллекторе какой пересчет сделать )

кто как делает?

 

Спасибо

Share this post


Link to post
Share on other sites

А top не пойдет разве?

нет, если его запускать с ключом -d1 или еще в каком режиме для парсинга, то счетчики %% по процам пустые

Share this post


Link to post
Share on other sites

По каждому ядру я получаю вот таким скриптом.

 

1) Ставим pcpustat

cd /usr/ports/sysutils/pcpustat && make install

2)./check_cpu

 

 

cat check_cpu


#!/bin/sh


cpu=`sysctl -n kern.smp.cpus` 
#cpu=1
#1 CPU
if [ "$cpu" -eq "1" ]
then 

cpu0=`pcpustat -w 1 -c 1 -p 0 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `

echo  1 CPU SMP OK: "|" cpu0=$cpu0 

fi

#2 CPU
if [ "$cpu" -eq "2" ]

then 

cpu0=`pcpustat -w 1 -c 1 -p 0 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu1=`pcpustat -w 1 -c 1 -p 1 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `

echo  2 CPU SMP OK: "|" cpu0=$cpu0 cpu1=$cpu1 

fi
#3 CPU
if [ "$cpu" -eq "3" ]

then 

cpu0=`pcpustat -w 1 -c 1 -p 0 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu1=`pcpustat -w 1 -c 1 -p 1 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu2=`pcpustat -w 1 -c 1 -p 2 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `

echo  3 CPU SMP OK: "|" cpu0=$cpu0 cpu1=$cpu1 cpu2=$cpu2 

fi

#4 CPU
if [ "$cpu" -eq "4" ]

then 

cpu0=`pcpustat -w 1 -c 1 -p 0 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu1=`pcpustat -w 1 -c 1 -p 1 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu2=`pcpustat -w 1 -c 1 -p 2 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu3=`pcpustat -w 1 -c 1 -p 3 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `

echo  4 CPU SMP OK: "|" cpu0=$cpu0 cpu1=$cpu1 cpu2=$cpu2 cpu3=$cpu3 

fi

#8 CPU
if [ "$cpu" -eq "8" ]

then 

cpu0=`pcpustat -w 1 -c 1 -p 0 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu1=`pcpustat -w 1 -c 1 -p 1 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu2=`pcpustat -w 1 -c 1 -p 2 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu3=`pcpustat -w 1 -c 1 -p 3 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu4=`pcpustat -w 1 -c 1 -p 4 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu5=`pcpustat -w 1 -c 1 -p 5 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu6=`pcpustat -w 1 -c 1 -p 6 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `
cpu7=`pcpustat -w 1 -c 1 -p 7 -i -x | grep -A 1 id | grep -v id | sed 's/  //' `

echo  8 CPU SMP OK: "|" cpu0=$cpu0 cpu1=$cpu1 cpu2=$cpu2 cpu3=$cpu3 cpu4=$cpu4 cpu5=$cpu5 cpu6=$cpu6 cpu7=$cpu7

fi

exit 0

 

Получаем

4 CPU SMP OK: | cpu0=14 cpu1=12 cpu2= 4 cpu3=13

 

Делал для Nagios

Edited by roysbike

Share this post


Link to post
Share on other sites

Загрузку CPU можно мониторить через HOST-RESOURCES-MIB. Эта миба RFC'шная, так что скорее всего есть поддержка в bsnmpd.

Share this post


Link to post
Share on other sites

Есть она там. Ею и пользуюсь.

Достаточно всего одну стоку раскоментировать в конфиге bsnmpd...

Share this post


Link to post
Share on other sites

Есть она там. Ею и пользуюсь.

Достаточно всего одну стоку раскоментировать в конфиге bsnmpd...

HOST-RESOURCES-MIB? посмотрю, спасибо

Share this post


Link to post
Share on other sites

Есть еще кстати UCD-MIB, в которой много чего полезного есть для мониторинга серверов. Она хоть и формально ынтерпрайзная, но в опенсорсных snmpd есть.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this