Freesco, NND, CDN, EOS

http://www.freesco.pl
Dzisiaj jest środa, 18 czerwca 2025, 23:31

Strefa czasowa UTC+2godz.




Nowy temat Odpowiedz w temacie  [ Posty: 21 ]  Przejdź na stronę 1, 2  Następna
Autor Wiadomość
Post: czwartek, 7 lutego 2008, 22:57 
Offline
Użytkownik

Rejestracja: poniedziałek, 19 grudnia 2005, 11:03
Posty: 189
Witam,
Po zrobieniu restartu serwera poleceniem reboot, jak odpalaja sie kolejne uslugi i dochodzi rrdtool, to wszystko sie na chwile zatrzymuje, po dluzeszej chwili widac ze rrdtool sie odpalil, wszystko dziala potem ok a na wykresie uzycia procesora pojawia sie slupek przez cala wysokosc wykresu a w wyniku pojawia sie: max 988888888% min: -988778888888
spotkal sie ktos z czyms takim? moze w zlym miejscu mam umieszczony wpis rrdtool w rc.conf

: [/] [] ()
DAEMONS=(syslogd klogd crond sshd lan internet iptables !xinetd dhcpd httpd proftpd mysqld rrdtool stats rsync mrtg squid)


prosze o jakies sugestie co tym zrobic?
pozdrawiam


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 7 lutego 2008, 23:39 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
a jakim skryptem otrzymujesz dane dla rrdtoola?


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 8 lutego 2008, 00:08 
Offline
Użytkownik

Rejestracja: poniedziałek, 19 grudnia 2005, 11:03
Posty: 189
ale tak sie dzieje tylko przy restarcie systemu, poza tym dane sie zgadzaja i nie ma przeklaman

: [/] [] ()
#!/bin/sh

NAZWA_BAZY=/etc/rrdtool/rrd/procesor.rrd


user=`awk '/cpu /{print $2+$3; print $4;}' < /proc/stat | tr "\n" " " | cut -d " " -f 1`
system=`awk '/cpu /{print $2+$3; print $4;}' < /proc/stat | tr "\n" " " | cut -d " " -f 2`


rrdtool update $NAZWA_BAZY --template user:system N:$user:$system


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 8 lutego 2008, 11:44 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
no właśnie.

Niestety ale też nie znalazłem jak mrtg i rdtool interpretuje te dwie uzyskane liczby.
definicja jest taka:
Cytuj:
The number of jiffies (1/100ths of a second) that the system spent in user mode, user mode with low priority (nice), system mode, and the idle task, respectively. The last value should be 100 times the second entry in the uptime pseudo-file.


I teraz rodzi się pytanie wg jakiego wzoru mrtg (bo w nim to napewno działa) wylicza obciążenie CPU?

Przypuszczam że właśnie dlatego wyświetla ci się taki dziwny wykres bo po restarcie rrdtool nie przelicza tych wartości =dlaczego ? .

Z drugiej strony gdzieś czytałem że w/w sposób pomiaru obarczony jest błędem.
Autor mrtg na początku podawał taki sposób pomiaru w przykładach ale później się z tego wycofał.
Niestety ale nie potrafię doszukać się tego wątku.

Oto skrypt co daje pewne wartości użycia CPU wyrażony w % :
: [/] [] ()
#!/bin/sh
. /etc/rrdtool.conf
A=`/usr/bin/vmstat 1 3 | tail -1`
set $A

if [ ! -z "$A" ]; then
run=$1; backgr=$2; swpd=$3; free=$4; inact=$5; act=$6; si=$7; so=$8; bi=$9
shift;shift;shift;shift;shift;shift;shift;shift;shift;
bo=$1 int=$2; cs=$3; user=$4; system=$5; idle=$6
fi
echo $system
echo $user


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: sobota, 9 lutego 2008, 18:03 
Offline
Użytkownik

Rejestracja: poniedziałek, 19 grudnia 2005, 11:03
Posty: 189
jest jakis problem z wczytywaniem tych danych z bazy, uzylem twojego skryptu do zliczania procesora, dane do bazy sa zapisywane prawidlowo, ale jest jakis problem z wyswietlaniem tego na wykresie, mozesz pokazac swoj skrypt cgi do wyswietlania procesora?


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: sobota, 9 lutego 2008, 23:52 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
jaki problem?
co się dzieje?
pokaż zapis
generuje się plik graficzny?


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 10 lutego 2008, 01:08 
Offline
Użytkownik

Rejestracja: poniedziałek, 19 grudnia 2005, 11:03
Posty: 189
wykres mi generuje tylko wszedzie jest w wyniku zero, oto moje skrypty:

baze utworzylem tak:
: [/] [] ()
rrdtool create /etc/rrdtool/rrd/procesor.rrd \
--step 60 \
DS:user:COUNTER:600:0:100 \
DS:system:COUNTER:600:0:100 \
DS:idle:COUNTER:600:0:100 \
RRA:AVERAGE:0.5:1:720 \
RRA:AVERAGE:0.5:2:720 \
RRA:AVERAGE:0.5:8:1260 \
RRA:AVERAGE:0.5:30:1488 \
RRA:AVERAGE:0.5:180:1488 \
RRA:AVERAGE:0.5:360:1488 \
RRA:AVERAGE:0.5:720:1488


mam taki skrypt zliczajacy:

: [/] [] ()
#!/bin/bash

NAZWA_BAZY=/etc/rrdtool/rrd/procesor.rrd

A=`/usr/bin/vmstat 1 3 | tail -1`

user=`echo $A | gawk '{print $13}'`
system=`echo $A | gawk '{print $14}'`
idle=`echo $A | gawk '{print $15}'`

rrdtool update $NAZWA_BAZY \
    --template user:system:idle \
    N:$user:$system:$idle \


wynik polecenia przy opcji -x

: [/] [] ()
[root@RudNet skrypty]# ./procesor
+ NAZWA_BAZY=/etc/rrdtool/rrd/procesor.rrd
++ /usr/bin/vmstat 1 3
++ tail -1
+ A=' 0  0      0  12952  71488 253784    0    0     0     0  205    37  2  3 95  0'
++ echo 0 0 0 12952 71488 253784 0 0 0 0 205 37 2 3 95 0
++ gawk '{print $13}'
+ user=2
++ echo 0 0 0 12952 71488 253784 0 0 0 0 205 37 2 3 95 0
++ gawk '{print $14}'
+ system=3
++ echo 0 0 0 12952 71488 253784 0 0 0 0 205 37 2 3 95 0
++ gawk '{print $15}'
+ idle=95
+ rrdtool update /etc/rrdtool/rrd/procesor.rrd --template user:system:idle N:2:3:95

z tego wynika ze dane do bazy sa zapisywane prawidlowo

skrypt cgi:

: [/] [] ()
LANG=pl_PL.iso-8859-2 rrdtool graph $obrazek/procesor.png \
--height=200 \
--width=900 \
--units-length 3 \
--vertical-label "Procenty" \
--end now --start $CZAS \
--upper-limit 100 --lower-limit 0 \
--rigid \
--interlaced \
--title "Procesor" \
DEF:user=/etc/rrdtool/rrd/procesor.rrd:user:AVERAGE \
DEF:system=/etc/rrdtool/rrd/procesor.rrd:system:AVERAGE \
DEF:idle=/etc/rrdtool/rrd/procesor.rrd:idle:AVERAGE \
CDEF:obc=user,system,+ \
AREA:idle#FFCC33:"% cpu idle" \
    GPRINT:idle:LAST:"    |  AKT\\: %3.0lf" \
    GPRINT:idle:MAX:" |  MAX\\: %3.0lf" \
    GPRINT:idle:MIN:" |  MIN\\: %3.0lf"  \
    GPRINT:idle:AVERAGE:" |  AVG\\: %3.0lf  |\n" \
STACK:obc#FF0000:"% system+user" \
    GPRINT:obc:LAST:" |  AKT\\: %3.0lf" \
    GPRINT:obc:MAX:" |  MAX\\: %3.0lf" \
    GPRINT:obc:MIN:" |  MIN\\: %3.0lf" \
    GPRINT:obc:AVERAGE:" |  AVG\\: %3.0lf  |\n" \
AREA:system#3333FF:"% cpu system" \
    GPRINT:system:LAST:"  |  AKT\\: %3.0lf" \
    GPRINT:system:MAX:" |  MAX\\: %3.0lf" \
    GPRINT:system:MIN:" |  MIN\\: %3.0lf" \
    GPRINT:system:AVERAGE:" |  AVG\\: %3.0lf  |\n" \
AREA:user#33FF00:"% cpu usera" \
    GPRINT:user:LAST:"   |  AKT\\: %3.0lf" \
    GPRINT:user:MAX:" |  MAX\\: %3.0lf" \
    GPRINT:user:MIN:" |  MIN\\: %3.0lf" \
    GPRINT:user:AVERAGE:" |  AVG\\: %3.0lf  |\n" > /dev/null
echo '<IMG BORDER=1 ALT="procesor" SRC="/rrdtool/procesor.png"></A><BR>'


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 10 lutego 2008, 03:20 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
winy szukałbym w pierwszym poleceniu, czyli w tworzeniu bazy.
Sprawdziłem u siebie i
jak przerobiłem na taki:
: [/] [] ()
rrdtool create /etc/rrdtool/rrd/procesor.rrd \
--step 60 \
DS:user:GAUGE:600:0:100 \
DS:system:GAUGE:600:0:100 \
DS:idle:GAUGE:600:0:100 \
RRA:AVERAGE:0.5:1:720

to wykresy zagadały :D

COUNTER - liczy przyrosty liczb (już teraz chyba wiem co znaczą liczby w/w)
GAUGE - pokazuje wartości rzeczywiste


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 10 lutego 2008, 15:23 
Offline
MODERATOR

Rejestracja: wtorek, 31 sierpnia 2004, 23:06
Posty: 3267
Lokalizacja: Katowice
powinien byc counter
i taki koniec:
RRA:AVERAGE:0.5:1:1440 \
RRA:AVERAGE:0.5:2:720 \
RRA:AVERAGE:0.5:4:2520 \
RRA:AVERAGE:0.5:6:1680 \
RRA:AVERAGE:0.5:180:2936 \
RRA:AVERAGE:0.5:360:1468

zeby miec wykres na 2 lata

_________________
Obrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 10 lutego 2008, 18:43 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
dlaczego counter ?


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 10 lutego 2008, 23:38 
Offline
Użytkownik

Rejestracja: poniedziałek, 19 grudnia 2005, 11:03
Posty: 189
poprawilem baze na gauge i dziala


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek, 11 lutego 2008, 10:14 
Offline
MODERATOR

Rejestracja: wtorek, 31 sierpnia 2004, 23:06
Posty: 3267
Lokalizacja: Katowice
rrdtool create /rrdtool/rrd/procesor.rrd \
--step 30 \
DS:user:COUNTER:600:0:U \
DS:system:COUNTER:600:0:U \
RRA:AVERAGE:0.5:1:1440 \
RRA:AVERAGE:0.5:2:720 \
RRA:AVERAGE:0.5:4:2520 \
RRA:AVERAGE:0.5:6:1680 \
RRA:AVERAGE:0.5:180:2936 \
RRA:AVERAGE:0.5:360:1468


#!/bin/sh
NAZWA_BAZY=/rrdtool/rrd/procesor.rrd


user=`awk '/cpu0 /{print $2+$3; print $4;}' < /proc/stat | tr "\n" " " | cut -d " " -f 1`
system=`awk '/cpu0 /{print $2+$3; print $4;}' < /proc/stat | tr "\n" " " | cut -d " " -f 2`


rrdtool update $NAZWA_BAZY \
--template \
user:system \
N:$user:$system

_________________
Obrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek, 11 lutego 2008, 12:00 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
czerwo czy potrafisz mi wytłumaczyc co oznaczają liczby jakie zostały wygenerowane?
Albo lepiej wyjaśnij, jak je interpretowac (lub rrdtool interpretuje) żeby otrzymac warości procentowe.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek, 11 lutego 2008, 12:59 
Offline
MODERATOR

Rejestracja: wtorek, 31 sierpnia 2004, 23:06
Posty: 3267
Lokalizacja: Katowice
Z tego co ja wiem to:
np.
b=`awk '/cpu0 /{print $2+$3; print $4;}' < /proc/stat | tr "\n" " " | cut -d " " -f 1`
sleep 2
c=`awk '/cpu0 /{print $2+$3; print $4;}' < /proc/stat | tr "\n" " " | cut -d " " -f 1`

(c - b ):2 = srednie zuzycie procesora przez 2 sekundy

EDIT:
przyklad:
[czerwo@desktop ~]$ awk '/cpu0 /{print $2+$3; print $4;}' < /proc/stat | tr "\n" " " | cut -d " " -f 1;sleep 60; awk '/cpu0 /{print $2+$3; print $4;}' < /proc/stat | tr "\n" " " | cut -d " " -f 1
7048
8082

8082-7048=1034
1034/60=17.23
I pasuje :)

_________________
Obrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek, 11 lutego 2008, 14:10 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
Tak też myślałem.
I w takim sposobie wpisywania danych wpis counter ma rację bytu.

Z drugiej strony wynika z tego że przyjdzie taki moment kiedy wartości tych liczb przekroczą swój zakres i wtedy na chwilę dane będą nieprawdziwe.( oczywiście przy dużym uptime)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek, 11 lutego 2008, 14:23 
Offline
MODERATOR

Rejestracja: wtorek, 31 sierpnia 2004, 23:06
Posty: 3267
Lokalizacja: Katowice
DS:user:COUNTER:600:0:U \
Dlatego na koncu jest U czyli nieskonczonosc.

_________________
Obrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek, 11 lutego 2008, 16:52 
Offline
Użytkownik

Rejestracja: poniedziałek, 19 grudnia 2005, 11:03
Posty: 189
ja tam zostaje przy przy moim rozwiazaniu, zmienilem tylko baze i smiga wszystko teraz,

wie ktos moze jak zrobic wyswietlanie temperatury w dwoch kolorach? np, ponizej zera niebieski a powyzej zera pomaranczowy?


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek, 11 lutego 2008, 19:44 
Offline
MODERATOR

Rejestracja: wtorek, 31 sierpnia 2004, 23:06
Posty: 3267
Lokalizacja: Katowice
jezei chodzi Ci o cos takiego to od razu mowie ze to skomplikowane jak cholera
http://listonosz.com.pl/cgi-bin/temperatura

_________________
Obrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek, 11 lutego 2008, 23:01 
Offline
Użytkownik

Rejestracja: poniedziałek, 19 grudnia 2005, 11:03
Posty: 189
no widzialem twoje wykresy, i skrypty:D dlatego pytam o cos prostszego, dwa kolory tylko, ale chyba sobie odpuszcze, w sumie zbedny bajer ;)


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: wtorek, 12 lutego 2008, 02:28 
Offline
MODERATOR

Rejestracja: wtorek, 31 sierpnia 2004, 23:06
Posty: 3267
Lokalizacja: Katowice
przy dwoch jeszcze nie taki duzy problem bo jeden if nna wykresie trzeba zrobic ale powiem tak
jak mam wam napisac jak zrobic tego jednego ifa to przez godzine bede studiowal dokumentacje bo jakos jest to dramnie troszke skomplikowane ;D
najprosciej, napisac skrypt w perlu ktory:
przy temperaturze dodatniej (mamy baze z temp_plus i temp_minus) wypisuje jako temp_plus wartosc aktualna a temp_minus 0 w zime odwyrtka i na wykres to naniesc.
Kiedys mnie pewna osoba namowila zeby zrobil plynne przejscie kolorow na wykresie, juz po calej nocy udalo mi sie to zrobic i nie wyglada to ciekawie.
Przy 2 kolorach jeszcze jest oki a pozniej to juz tylko wyglada jak choinka.

Dobranoc

_________________
Obrazek


Na górę
 Wyświetl profil  
 
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat Odpowiedz w temacie  [ Posty: 21 ]  Przejdź na stronę 1, 2  Następna

Strefa czasowa UTC+2godz.


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 4 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
cron
Technologię dostarcza phpBB® Forum Software © phpBB Group
Hosting: Compus-Net
RobertKonik.pl