Freesco, NND, CDN, EOS

http://www.freesco.pl
Dzisiaj jest czwartek, 28 marca 2024, 17:56

Strefa czasowa UTC+2godz.




Nowy temat Odpowiedz w temacie  [ Posty: 33 ]  Przejdź na stronę Poprzednia  1, 2
Autor Wiadomość
 Tytuł:
Post: niedziela, 3 lutego 2008, 13:32 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
wykresy sa zrobione na rrdtool...
to cały sysytem tworzenia i zbierania danych, oraz rysowania wykresów.
rewelacyjny

Prosty w obsłudze, baardzo konfigurowalny, ale niestety nie ma dobrego manuala po polsku.

tutaj http://temperatura.one.pl/
sa moje wykresy (trzeba nacisnąc na wykres aby zobaczyć więcej - tak jak w mrtg)
nie są jeszcze opisane


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 3 lutego 2008, 13:37 
Offline

Rejestracja: niedziela, 15 czerwca 2003, 16:57
Posty: 28
Wiem, że to jest robione na rrdtool, próbowałem trochę poprzerabiać skrypty dostępne w sieci, ale niestety nic z tego na razie nie wyszło:( możesz udostępnić Twoje skrypty??


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 3 lutego 2008, 16:15 
Offline

Rejestracja: poniedziałek, 13 lutego 2006, 20:39
Posty: 42
Lokalizacja: Gliwice
pectosol pisze:
tutaj http://temperatura.one.pl/
sa moje wykresy (trzeba nacisnąc na wykres aby zobaczyć więcej - tak jak w mrtg)
nie są jeszcze opisane

pectosol możesz opublikować twoje skrypty i jakiś opis do tego, bo od kilku dni probuję zrobić takie wykresy jak ty masz i coś mi nie wychodzi.
Próbowałem przerobić te co zrobił czerwo ale niestety coś mi to nie wychodzi :?

_________________
Obrazek


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

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
ok...może to być początek czegoś wielkiego ;)

Aby był porządek trzeba stworzyć katalogi
/etc/rrdtool/ a w nim
/etc/rrdtool/bazy/
i
/etc/rrdtool/skrypty/

(tu użyłem katalogów jakie stworzył automagiczny konfigurator Marska - ale mogą być dowolne ważne aby zmienić ścieżki wszędzie)

Na początek musimy zrobić bazę w której bedą przechowywane dane. W jednej bazie może być kilka mierzonych wartości.
Robimy ją jednorazowo.

Rrdtool jest zestawem programów które wykonuje się z parametrami.
A ponieważ tych parametrów jest dużo i często są długie dlatego wygodnie jest je umieścić w jednym pliku-skrypcie.
oto przykładowy plik który służył do stworzenia mojej bazy
: [/] [] ()
rrdtool create /etc/rrdtool/bazy/temperatura.rrd --step 300 \
 DS:tpiec:GAUGE:600:-1:105 \
 DS:twoda:GAUGE:600:-1:105 \
 DS:tdom:GAUGE:600:-5:55 \
 DS:tcopow:GAUGE:600:-1:105 \
 DS:tdwor:GAUGE:600:-27:55 \
 RRA:AVERAGE:0.5:1:1200 \
 RRA:MIN:0.5:12:2400 \
 RRA:MAX:0.5:12:2400 \
 RRA:AVERAGE:0.5:12:2400

znak \ oznacza przełamanie wiersza, czyli powyższy zapis jest równoznaczny z wpisanym w jednej lini.

teraz gdy mamy bazę należy zapisać w nią dane.
sposobów pewnie jest nieskończenie wiele np z crona, lub przy pomocy sleep itp.
Ja stworzyłem jeden plik wykonywalny który jest odpalany z crona co 3 min.
czyli
crontab -e
i dopisujemy:
: [/] [] ()
*/3 * * * * /etc/rrdtool/skrypty/calosc

a w katalogu /etc/rrdtool/skrypty/ tworzymy plik wykonywalny o nazwie
calosc a w nim
: [/] [] ()
#!/bin/sh
#tu dopisujemy sktypty które maja byc odpalana z crona
/etc/rrdtool/skrypty/temperatura.upd

Dzięki temu nie będziemy musieli tworzyc dodatkowych wpisów w cronie jesli zapragniemy jeszcze coś dodać.
Plik temperatura.upd wyglada tak
: [/] [] ()
#!/bin/bash
. /etc/rrdtool.conf
a=(`digitemp -a -q`)
tpiec=${a[1]}
twoda=${a[2]}
tdom=${a[3]}
tcopow=${a[4]}
tdwor=${a[5]}
rrdtool update /etc/rrdtool/bazy/temperatura.rrd \
-t tpiec:twoda:tdom:tcopow:tdwor \
N:$tpiec:$twoda:$tdom:$tcopow:$tdwor \
> /dev/null

Wcześniej trzeba mieć działajacy digitemp.
...
od tego momentu dane są zbierane.

Aby narysować wykres bedziemy potrzebować jeszcze jeden skrypt w /etc/rrdtool/skrypty/
nazwiemy go temperatura.www
a w nim
: [/] [] ()
#!/bin/sh
rrdtool graph /var/www/rrdtool/picture/"$1".png \
--end now --start end-"$2" --width 600 --height 180 \
DEF:copow=/etc/rrdtool/bazy/temperatura.rrd:tcopow:AVERAGE \
DEF:woda=/etc/rrdtool/bazy/temperatura.rrd:twoda:AVERAGE \
DEF:dom=/etc/rrdtool/bazy/temperatura.rrd:tdom:AVERAGE \
DEF:piec=/etc/rrdtool/bazy/temperatura.rrd:tpiec:AVERAGE \
DEF:dwor=/etc/rrdtool/bazy/temperatura.rrd:tdwor:AVERAGE \
LINE1:copow#000000:"temp. powrot wody co" \
LINE1:dom#FF8C00:"temp. w domu" \
LINE1:woda#CD5C5C:"temp. c.w.u" \
LINE1:dwor#0000CB:"temp. na zewnatrz" \
LINE1:piec#FF0000:"temp. na piecu" \
>/dev/null

skrypt tworzy w katalogu dla www obrazki-wykresy
uruchamia sie go z dwoma parametrami pierwszy to nazwa pliku wynikowego a drugi to okres za jaki ma byc tworzony wykres
czyli polecenie
temperatura.www test 1h
stoworzy w katalogu /var/www/rrdtool/picture/ plik o nazwie test.png z wykresem godzinowym.
-----edit----
można używać następujących parametrów: s (sekundy), h (godziny), d (dni), w (tygodnie), m (miesiące) y (lata)
---------------------
Mozna go uruchamiać z crona - rozwiązanie dobre dla stron odwiedzanych przez wielu uzytkowników jednocześnie, kosztem użycia CPU.
Mozna uruchamiać podczas wywołania strony www - spada uzycie CPU.
Do drugiego rozwiązania potrzebny bedzie np lighttp lub apache z włączoną obsługą php lub cgi.
Ja zobiłem to na lighttp z cgi i ssi (to wszytko jest właczone standardowo przy instalacji).
dla porządku stwórzmy jeszcze dwa katalogi;
/var/www/rrdtool/
i
/var/www/rrdtool/picture/
Teraz w katalogu dla /var/www/rrdtool tworzymy index.shtml
a w nim np:
: [/] [] ()
<html>
<head>
<title>temperatura</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2"

</head>
<body>
<!--#exec cmd="/etc/rrdtool/skrypty/temperatura.www temp-day 24h"-->
<b><center>
<a href="/rrdtool/temperatura.shtml"><img src="/rrdtool/picture/temp-day.png" al
<br><br>
</b></center>


</body>
</html>

ja mam jeszcze jeden plik temperatura.shtml
: [/] [] ()
<html>
<head>
<title>temperatura</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2"

</head>
<body>
<!--#exec cmd="/etc/rrdtool/skrypty/temperatura.www temp-week 168h"-->
<!--#exec cmd="/etc/rrdtool/skrypty/temperatura.www temp-month 1m"-->
<!--#exec cmd="/etc/rrdtool/skrypty/temperatura.www temp-year 1y"-->
<b><center>
<br>
<br><br>
<img src="/rrdtool/picture/temp-day.png" alt="Temperatura dobowa" />
<br><br>
<img src="/rrdtool/picture/temp-week.png" alt="Temperatura tygodniowa" />
<br><br>
<img src="/rrdtool/picture/temp-month.png" alt="Temperatura miesieczna" />
<br><br>
<img src="/rrdtool/picture/temp-year.png" alt="Temperatura roczna" />
<br><br>
</b></center>


ważne jest rozszerzenie .shtml bo tylko dzięki temu skrypty odpalą się.

i tyle ... powinno działać, ale tu jedna bardzo ważna uwaga należy nadać odpowiednie prawa własności skryptom i katalogom.
Piszę to dlatego bo np lighttpd uruchamia skrypty na prawach nobody .
Objaw jest taki że skrypt tworzy pliki ale po otwarciu przez www nic sie nie dzieje.

Gdyby jednak komuś było za mało opcji to proponuję przestudiować stone autora rrdtool i przeczytać dokumentację http://oss.oetiker.ch/rrdtool/doc/index.en.html


Ostatnio zmieniony niedziela, 3 lutego 2008, 18:12 przez pectosol, łącznie zmieniany 1 raz

Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 3 lutego 2008, 16:32 
Offline

Rejestracja: niedziela, 15 czerwca 2003, 16:57
Posty: 28
Wielkie dzięki:)Wieczorem spróbuję to uruchomić. Mam pytanie, jakie prawa mają mieć katalogi i skrypty żeby wszystko ładnie działało??


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 3 lutego 2008, 17:55 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
jak teraz przeglądam skrypty to widzę że są na prawach i grupie roota z uprawnieniami 755... bo tak ostatecznie sobie zmieniłem
Ale wiem że na początku miałem z tym problem i dlatego zwróciłem na to uwagę.


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: sobota, 16 lutego 2008, 00:38 
Offline
PGF

Rejestracja: piątek, 25 lutego 2005, 18:22
Posty: 1430
Lokalizacja: Elbląg
MalyPL pisze:
Witam
https://memcenter.maxim-ic.com/guest/register.mvp
Stąd można dostać kilka sampli czujników temperatury. Dokładnie to 4 sztuki z rodzny ds18. w wyszukiwrace wpiszcie ds18s20 lub ds18b20 to ma być na 1-wire.

Wczoraj przyszła przesyłka - 4szt. DS18S20+ :)
I to nawet całkiem szybko - 31.01 wypełniłem formularz.

_________________
F33/F07,F11,F13,F17
ObrazekObrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: sobota, 16 lutego 2008, 01:35 
Offline
PGF

Rejestracja: wtorek, 27 czerwca 2006, 14:09
Posty: 2112
Lokalizacja: Poznań
jestem więc chyba jedyną osobą, której nie przysłali gratisów. Mimo, że próbowałem 10 razy.

_________________
Dedykowane systemy CRM, e-commerce i witryny korporacyjne.
Software House Poznań


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: sobota, 16 lutego 2008, 10:58 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
chyba tak
mi też przysłali, a zamawiałem 4 szt. DS2438


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: niedziela, 17 lutego 2008, 02:29 
Offline
PGF

Rejestracja: wtorek, 27 czerwca 2006, 14:09
Posty: 2112
Lokalizacja: Poznań
Może po prostu nie lubią mojego domu ;-) Zamówię na adres firmy. EOT

_________________
Dedykowane systemy CRM, e-commerce i witryny korporacyjne.
Software House Poznań


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: poniedziałek, 1 czerwca 2009, 22:18 
Offline
Użytkownik

Rejestracja: niedziela, 28 grudnia 2008, 01:22
Posty: 113
Lokalizacja: Tarnowskie Góry
Że tak zapytam... Jak to skubaństwo uruchomić ? Ślęcze nad postami od 6 godzin i jak narazie nic mi nie wypaliło. Jak wydaje polecenie:
: [/] [] ()
temperatura.www test 1h


To obrazek się pojawia. Tylko szkoda, że jest pusty i potem już nic się nie dzieje... Nie jest to takie proste wcale... przynajmniej dla mnie :(

_________________
Celeron 466MHz | 256MB RAM | HDD: CF 4GB | Zasilacz (przerobiony na pasywny) | UPS 400VA | Netia 1 Mb/s


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: wtorek, 2 czerwca 2009, 20:54 
Offline
Użytkownik

Rejestracja: niedziela, 9 kwietnia 2006, 10:14
Posty: 316
najpierw sprawdz czy digitemp odczytuje czujniki poprawnie.
Potem czy skrypt zapisuje poprawnie do bazy (najpierw "ręcznie", później z crona)
Najłatwiej sprawdzić obserwując czy zmienia sie czas zapisu pliku.

Ja też trochę się nameczyłem, najczęstsze problemy wynikają z braku praw zapisu dla pliku lub katalogu.
Dzieje się tak dlatego że katalogi i bazy są tworzone "z palca" jako root, natomiast skrypty i rrdtool czesto odpalane są z usera.
Dlatego trzeba pilnowac praw plików i katalogów

_________________
PECTOSOL to lek wykrztuśny stosowany w nieżytach gardła, przy suchym, męczącym kaszlu.
>>Jak mądrze zadawać pytania<<


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 3 czerwca 2009, 22:56 
Offline
Użytkownik

Rejestracja: niedziela, 28 grudnia 2008, 01:22
Posty: 113
Lokalizacja: Tarnowskie Góry
Digitemp odczytuje prawidłowo. 3 Czujniki mam już na mrtg i działają. Ale to mi nie wystarcza bo jakoś mały zakres ma mrtg. Wszystkim katalogom gdzie są skrypty i pliki z www dałem na próbe chmod 777. Czas zapisu obrazka sie nie zmienia w ogóle :(.

_________________
Celeron 466MHz | 256MB RAM | HDD: CF 4GB | Zasilacz (przerobiony na pasywny) | UPS 400VA | Netia 1 Mb/s


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

Strefa czasowa UTC+2godz.


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 13 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