Freesco, NND, CDN, EOS
http://forum.freesco.pl/

Uptime - wykres w mrtg
http://forum.freesco.pl/viewtopic.php?f=22&t=9464
Strona 1 z 1

Autor:  Anonymous [ niedziela, 16 października 2005, 14:52 ]
Tytuł:  Uptime - wykres w mrtg

Napisałem sobie taki oto skrypt podający wyniki uptime serwera. Chciałem żeby w mrtg rysowało mi wykres rzeczywistego uptime w czasie aktualnym oraz maksymalny jaki zostal osiagniety.

Skrypt ma za zadanie utworzenie pliku z zawartoscia jaki najwyzszy uptime zostal osiagniety, oraz jesli aktualny uptime jest wiekszy od tego ktory jest w pliku z najwyzszym uaktulanienie go.

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

if [ ! -r /home/httpd/html/mrtg/uptime/najwyzszy ]; then
najwyzszy=`uptime | grep day | awk {'print $3'}`
echo $najwyzszy > /home/httpd/html/mrtg/uptime/najwyzszy
fi

#sprawdzenie czy najwyzszy uptime jest wiekszy od aktualnego
aktualny=`uptime | grep day | awk {'print $3'}`
najwyzszy=`cat /home/httpd/html/mrtg/uptime/najwyzszy`

if [ $najwyzszy -lt $aktualny ]; then
echo $aktualny > /home/httpd/html/mrtg/uptime/najwyzszy
fi

#sprawdzenie czy uptime jest juz 1 dzien
#jesli nie to wypisanie 0 oraz najwyzszego uptime

sprawdzenie=`uptime | awk {'print $4'}`

if [ $sprawdzenie = day, ]; then

echo $aktualny
echo $najwyzszy


else if [ $sprawdzenie = days, ]; then

echo $aktualny
echo $najwyzszy

else

echo "0"
echo $najwyzszy

fi

fi


Jakby ktos mogl to prosilbym o sprawdzenie. Jednakze jedno co mi nie wychodzi to to ze jak plik z najwyzszym uptime nie istanieje, zeby skrypt dopisal wartosc zero do tego pliku jednoczesnie go tworzac.

Ma wypisywac rowniez tylko uptime w ilosci dni, a wiadomo ze w pierwszym dniu pokazuje on godziny. Sprobowalem to osiagnac piszac SPRAWDZENIE ale nie jest ono za bardzo odpowiednie.

Autor:  czerwo [ niedziela, 16 października 2005, 15:01 ]
Tytuł: 

uptime2="`cat /proc/uptime | cut -d "." -f 1`"; uptime1=$(expr "$uptime2" / 86400)
echo uptime2

i masz uptime a pierwszego dnia masz zawsze 0

Autor:  Anonymous [ niedziela, 16 października 2005, 15:43 ]
Tytuł: 

dzięki za rade hehe 8)

widać że niepotrzebnie się starałem ;) hehe

po lekkiej modernizacji:
: [/] [] ()
#!/bin/sh

uptime2="`cat /proc/uptime | cut -d "." -f 1`"
uptime1=$(expr "$uptime2" / 86400)

if [ ! -r /home/httpd/html/mrtg/uptime/najwyzszy ]; then
echo $uptime1 > /home/httpd/html/mrtg/uptime/najwyzszy
fi

max=`cat /home/httpd/html/mrtg/uptime/najwyzszy`

if [ $max -lt $uptime1 ]; then
echo $uptime1 > /home/httpd/html/mrtg/uptime/najwyzszy
fi

echo $uptime1
echo $max

Autor:  jahu [ niedziela, 16 października 2005, 15:54 ]
Tytuł: 

fajna srawa taki skrut - a co jeszcze trzeba zrobic oprocz zapisania tego skryptu w katalgou mrtg?
w zasadzie mam sysinfo w php ale wolalbym miec tez info o najdluzszym uptime

Autor:  Anonymous [ niedziela, 16 października 2005, 16:01 ]
Tytuł: 

dopisac do mrtg.conf i oczywiscie do index.html

Autor:  jahu [ niedziela, 16 października 2005, 17:39 ]
Tytuł: 

no wlasnie tylko co tam wpisac bo trzeba w configu pewnie wpisac kilka linijek odpowaiadajacych za generowanie wykresu no i cala sekcje do wyswietlania tago w indexie

Autor:  Anonymous [ niedziela, 16 października 2005, 22:34 ]
Tytuł: 

jahu pisze:
no wlasnie tylko co tam wpisac bo trzeba w configu pewnie wpisac kilka linijek odpowaiadajacych za generowanie wykresu no i cala sekcje do wyswietlania tago w indexie


powiem Ci w ten sposób. ja Ci na tacy tego nie podam bo w ten sposób się tego nie nauczysz. jak czegoś będziesz potrzebował to znowu wrócisz na forum bo nie będziesz potrafił dopisać jednej linijki do pliku konfiguracyjnego.

przykłady masz jak na tacy w pliku konfiguracyjnym i w indeksie :) wystarczy troszke pogłówkować


ps. to w żadnym wypadku nie jest obraźliwa wypowiedź

Autor:  jahu [ poniedziałek, 17 października 2005, 09:18 ]
Tytuł: 

wiem wiem nie obrazliwa - chcial na skroty to wszystko ;P
a macie kod na calkowita ilosc polaczen przez serwer nawiazywanych? takie sumarycze dla lanu?

Autor:  makog [ poniedziałek, 17 października 2005, 11:35 ]
Tytuł: 

a zobaczyles to co dostales o demnie? tzn moje mrtg? tam wlasnie cos takiego jest :D

Autor:  jahu [ poniedziałek, 17 października 2005, 16:13 ]
Tytuł: 

Wycofuje pytanie - jełop czyli ja - nie zagladnal wczesniej do nadeslanego linku, pw z przed tygodnia mis ie tak przedawnila ze zapomnialem o linku - przepraszam i dzieki za przypomnienie makog.Up timu tam nie ma - probowalem cos od siebie ale jak zwykle spartolilem

Zaladowalem - wyswietla - tylko problem w tym co sie dzieje po dodaniu:
#!/bin/sh
polaczenia=`netstat-nat -n | wc -l`
polaczeniaest=`netstat-nat -n | grep ESTABLISHED | wc -l`
echo $polaczeniaest
echo $polaczenia
echo `uptime`
echo `hostname`
i po tym na wykersie mam albo 1 albo zero ale polaczen cos nie zlicza

zwykle zliczanie pojedynczego zawodniak tez mi cos nie chce dzialac pewnie znowu tajemnica poliszynela jest nr w stylu uruchom cos ponownie 8)

Autor:  jahu [ środa, 19 października 2005, 12:15 ]
Tytuł: 

Walcze ciagle z uptime:
po mrtg mrtg.conf wyskakuje cos takiego:
/etc/mrtg/dane: line 15: [: too many arguments
/etc/mrtg/uptime: line 12: [: -lt: unary operator expected
WARNING: Problem with Externale get '/etc/mrtg/uptime':
Expected a Number for 'out' but got ''

te dane to skryt dotyczacy zliczania danych ktore nawiasem tez nie dzialaja tyle ze ja nie mam neo tylko dsl.

Autor:  makog [ środa, 19 października 2005, 12:40 ]
Tytuł: 

/home/httpd/html/mrtg/uptime/najwyzszy
te katalogi masz oczywiscie utworzone tak?
jesli tak to wyedytuj pliknajwyzsze i wstaw w nim 0 slownie zero i powinno byc oki

Autor:  jahu [ środa, 19 października 2005, 13:06 ]
Tytuł: 

plik najwyzszy mial kompletnie pusty - dopisalem zero i czekam na wykresy

Autor:  blackangel [ wtorek, 27 grudnia 2005, 17:53 ]
Tytuł: 

Już nie mam sił chciałem dodać tego uptime do mtg ale jak robie to wogóle mi nie działają żadne wykresy

: [/] [] ()
#Uptime
Target[uptime]:`/etc/mrtg/uptime`
PageTop[uptime]: <center> <H1>Uptime serwera</H1>
Options[uptime]: gauge,noinfo, nopercent, \
                growright, nobanner, noi
Title[uptime]: Uptime
MaxBytes[uptime]: 1000
YLegend[uptime]: load
ShortLegend[uptime]: load
LegendO[uptime]: Uptime:
Legend2[uptime]: Load
PageTop[uptime]: Load


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

uptime2="`cat /proc/uptime | cut -d "." -f 1`"
uptime1=$(expr "$uptime2" / 86400)

if [ ! -r /home/httpd/html/mrtg/najwyzszy ]; then
echo $uptime1 > /home/httpd/html/mrtg/najwyzszy
fi

max=`cat /home/httpd/html/mrtg/najwyzszy`

if [ $max -lt $uptime1 ]; then
echo $uptime1 > /home/httpd/html/mrtg/najwyzszy
fi

echo $uptime1
echo $max


: [/] [] ()
<tr>
<td><DIV><B>Uptime</B></DIV>
<DIV><A HREF="uptime.html"><IMG BORDER=1 ALT="Uptime" SRC="uptime.png"></A><BR>
<SMALL><!--#flastmod file="uptime.html" --></SMALL></DIV>
</td></tr>


gdzie robie bład

Autor:  zciech [ wtorek, 27 grudnia 2005, 18:10 ]
Tytuł: 

: [/] [] ()
root@serwer:/etc/mrtg$mrtg /etc/mrtg/mrtg.conf
ERROR: Line 242 (PageTop[uptime]: Load) in CFG file (/etc/mrtg/mrtg.conf)
contains a duplicate definition for pagetop[uptime].
First definition is on line 234

: [/] [] ()
<DIV><A HREF="uptime.html"><IMG BORDER=1 ALT="Uptime" SRC="uptime-day.png"></A><BR>

Autor:  blackangel [ wtorek, 27 grudnia 2005, 19:43 ]
Tytuł: 

No fajnie działa tak

http://83.19.41.42/mrtg/uptime.html a jak zrobić żeby działało tak http://texim.dynalias.com/mrtg/uptime.html

Autor:  puchatek007 [ wtorek, 27 grudnia 2005, 22:29 ]
Tytuł: 

U mnie tak wygląda skrypt:

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

uptime2="`cat /proc/uptime | cut -d "." -f 1`"
uptime1=$(expr "$uptime2" / 86400)

if [ ! -r /home/dane/uptime/najwyzszy ]; then
  echo $uptime1 > /home/dane/uptime/najwyzszy
fi

max=`cat /home/dane/uptime/najwyzszy`

if [ $max -lt $uptime1 ]; then
  echo $uptime1 > /home/dane/uptime/najwyzszy
  max=`cat /home/dane/uptime/najwyzszy`
fi
echo $uptime1
echo $max

A w configu mrtg tak:
: [/] [] ()
##################### Uptime ################################
Title[router.uptime]: Uptime
MaxBytes[router.uptime]: 10000
Options[router.uptime]: transparent,gauge,noinfo,nopercent,growright,nobanner
Target[router.uptime]:`/home/skrypty/mrtg/mrtg-uptime.sh`
PageTop[router.uptime]: <H1>Uptime serwera</H1>
YLegend[router.uptime]: dni
ShortLegend[router.uptime]: dni
LegendI[router.uptime]: Uptime:
LegendO[router.uptime]: Max:
Legend1[router.uptime]: Dni
Legend2[router.uptime]: Dni
#

Strona 1 z 1 Strefa czasowa UTC+2godz.
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/