HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Hur gör man för att ... ? Hur fungerar ... ? Steg för steg-guider och förklarande artiklar finns i detta forum.

Moderator: elf98

Kategoriregler
Vill du visa bilder i ditt inlägg? Använd funktionen "Ladda upp bilaga" nedanför textrutan!
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5225
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av elf98 » 14 feb 2010, 20:16

AREA är vad du letar efter.
Grundade m.nu & temperatur.nu

Bild Bild
MarFri
Gillar hemautomation
Inlägg: 27
Blev medlem: 13 feb 2010, 20:56
Ort: Skövde

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av MarFri » 14 feb 2010, 20:18

tackar!
MarFri
Gillar hemautomation
Inlägg: 27
Blev medlem: 13 feb 2010, 20:56
Ort: Skövde

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av MarFri » 14 feb 2010, 20:24

fan va löjligt blind man kan bli läste ju om AREA haha aja funkar kanon tack igen!
MarFri
Gillar hemautomation
Inlägg: 27
Blev medlem: 13 feb 2010, 20:56
Ort: Skövde

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av MarFri » 19 feb 2010, 14:25

Tjena en fråga till :)

när jag framställer vecko månad och års grafer så får jag helatiden ett uträknat medeltal jag skulle gärna vilja ha exakta TAL även på de graferna vad är det som kontrollerar detta ?
Nordkvasen
Wannabe
Inlägg: 10
Blev medlem: 10 jan 2010, 12:19
Ort: Sågmyra
Kontakt:

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av Nordkvasen » 25 feb 2010, 00:35

Hej,
Underbar guide Tackar :)
Jag har kommit så långt att jag får svar med temperatur när jag kör get_temp.sh
men när jag kör graph_temp.pl så får jag följande fel:

Kod: Markera allt

henke@henke-fitpc2:~/bin$ ./graph_temp.pl
./graph_temp.pl: line 3: use: command not found
./graph_temp.pl: line 5: syntax error near unexpected token `('
./graph_temp.pl: line 5: `    my $cur_time = time();'
graph_temp.pl ligger i min /home/henke/bin och ägs av root och är chmoddade till 777.

apache2 fungerar och jag har installerat perl.
Någon som vet vad som är felet ?

Editerad: Hittade felet själv. Jag plankade av scriptet från den här sidan och klistrade in det genom nano och då hamnade första raden indragen, vilket tydligen var felet. Tog bort taben eller blankstegn som var före #!/usr/bin/perl
:)
Användarvisningsbild
CirruZZ
Master Moderator
Inlägg: 1621
Blev medlem: 13 feb 2008, 16:46
Ort: Ystad
Kontakt:

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av CirruZZ » 25 feb 2010, 00:59

Nordkvasen skrev:...
Editerad: Hittade felet själv. Jag plankade av scriptet från den här sidan och klistrade in det genom nano och då hamnade första raden indragen, vilket tydligen var felet. Tog bort taben eller blankstegn som var före #!/usr/bin/perl
:)
:wink:
Projekt tråd | Blogg | Hemautomation
Rapporterar för : Ystad & Duved
mickevi
Inlägg: 1
Blev medlem: 12 mar 2010, 21:53
Ort: Timrå

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av mickevi » 12 mar 2010, 22:03

Hejsan. Tack för att du tog dig tid att skriva guiden, sparade en del googlande. Har dock en liten fundering över den här raden, vad är anledningen till att du lägger till 0.005 grader?
# Get temps form OWFS
OutsideTemp=`cat /mnt/1wire/$OutsideTempSensor/temperature|sed -e s/" "//g|awk '{$1=$1 + 0.005;printf "%.2f", $1}'`
sen så kan du skippa
|sed -e s/" "//g
den delen är överflödig, du får samma resultat utan den.
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5225
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av elf98 » 12 mar 2010, 22:14

mickevi skrev:Har dock en liten fundering över den här raden, vad är anledningen till att du lägger till 0.005 grader?
# Get temps form OWFS
OutsideTemp=`cat /mnt/1wire/$OutsideTempSensor/temperature|sed -e s/" "//g|awk '{$1=$1 + 0.005;printf "%.2f", $1}'`
Tror att det är jag som skrivit den där koden, den ser väldigt bekant ut.

Kod: Markera allt

awk '{$1=$1 + 0.005;printf "%.2f", $1}'
Avrundrar till två decimaler. 0.005 adderas för att få en mer korrekt avrundning då printf-funktionen helt enkelt klipper allt efter två decimaler.
mickevi skrev: sen så kan du skippa
|sed -e s/" "//g
den delen är överflödig, du får samma resultat utan den.
Lite nu och då dyker det upp elaka mellanslag - onlinern är generell och då är det bra att göra sig av med eventuella mellanslag. Det inte något som kräver några stora resurser men tillägget kan helt eliminera massor med strul.
Grundade m.nu & temperatur.nu

Bild Bild
Användarvisningsbild
CirruZZ
Master Moderator
Inlägg: 1621
Blev medlem: 13 feb 2008, 16:46
Ort: Ystad
Kontakt:

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av CirruZZ » 12 mar 2010, 23:59

Elf98 har helt rätt, det är från honom som den kodsnutten har sin härkomst! (kanske ska ha med dig i referensen!) Och som Elf98 säger så är det för att få en mer korrekt avrundning som det finns med.

Som det står i guiden, jag har bara sammanställt allt jag hittat för att få det att funka... :wink:
Projekt tråd | Blogg | Hemautomation
Rapporterar för : Ystad & Duved
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5225
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av elf98 » 13 mar 2010, 09:09

Jag har med stor sannolikhet hittat inspiration till koden på nätet, så någon referens behöver du inte ange!
Grundade m.nu & temperatur.nu

Bild Bild
Mazellan
Wannabe
Inlägg: 8
Blev medlem: 26 mar 2010, 21:41
Ort: Töre

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av Mazellan » 26 mar 2010, 22:23

kanonguide! En liten kommentar bara. Du kör cron som root, det behövs inte i ditt exempel du kan köra den som vanlig användare och då bör man göra det. Minskar skadeeffekten om man ställer till det :)
lage
Inlägg: 2
Blev medlem: 16 apr 2010, 00:36
Ort: Skeppsmaln

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av lage » 16 apr 2010, 00:46

Hej.
En fråga angånde shellscriptet för att skapa .rrdfilerna:
Visst borde det i exemplet stå antingen:

Kod: Markera allt

# 240h with 2,5 min resolution
eller:

Kod: Markera allt

RRA:AVERAGE:0.5:1:576
eller har jag inte förstått hur man räknar?

mvh,
Lage
# 24h with 2,5 min resolution
# 7d with 5 min resolution
# 1y with 10 min resolution
# 20y with 1h resolution

directory="/home/anders/rrddata/"
filename="outside_temp.rrd"

# Check i file already exists
if [ ! -f "$directory$filename" ]
then
# File doesn't exist, create new rrd-file
echo "Creating RRDtool DB for outside temp sensor"
rrdtool create $directory$filename \
--step 150 \
DS:outsidetemp:GAUGE:300:-50:60 \
RRA:AVERAGE:0.5:1:5760 \
Användarvisningsbild
CirruZZ
Master Moderator
Inlägg: 1621
Blev medlem: 13 feb 2008, 16:46
Ort: Ystad
Kontakt:

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av CirruZZ » 16 apr 2010, 13:16

lage skrev:...
Visst borde det i exemplet stå antingen:

Kod: Markera allt

# 240h with 2,5 min resolution
eller:

Kod: Markera allt

RRA:AVERAGE:0.5:1:576
eller har jag inte förstått hur man räknar?
:oops: Visst ska det vara så, att jag inte upptäckt felet tidigare. Ser till att rätta till guiden.

TACK för att du uppmärksammade felet! :D
Projekt tråd | Blogg | Hemautomation
Rapporterar för : Ystad & Duved
lage
Inlägg: 2
Blev medlem: 16 apr 2010, 00:36
Ort: Skeppsmaln

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av lage » 17 apr 2010, 21:24

Det var så lite så. :)
Men nu har jag en annan fundering.
Är det nån fördel att använda perl för att skapa graferna jämfört med att använda shellscript?
Själv gjorde jag såhär:

Kod: Markera allt

#!/bin/bash
rrdtool graph /var/www/temperatur/ute_inne_24h.png \
--start -1d \
--title "Temp ute & inne senaste dygnet" \
--width 550 \
--height 400 \
--vertical-label °C \
DEF:UteTemp=/home/lage/rrddata/utetemp.rrd:utetemp:AVERAGE \
DEF:InneTemp=/home/lage/rrddata/innetemp.rrd:innetemp:AVERAGE \
COMMENT:\\t\\t\\t\\t"Nu     Medel    Max    Min"\\n \
HRULE:0#0000FF \
LINE1:UteTemp#0000FF:Ute\\t\\t\\t \
GPRINT:UteTemp:LAST:%6.1lf \
GPRINT:UteTemp:AVERAGE:%6.1lf \
GPRINT:UteTemp:MAX:%6.1lf \
GPRINT:UteTemp:MIN:%6.1lf\\n \
LINE1:InneTemp#FF0000:Inne\\t\\t \
GPRINT:InneTemp:LAST:%6.1lf \
GPRINT:InneTemp:AVERAGE:%6.1lf \
GPRINT:InneTemp:MAX:%6.1lf \
GPRINT:InneTemp:MIN:%6.1lf\\n
och det verkar funka bra.
Men ger perl några fördelar som jag inte insett?
Om inte så slipper man ju installera en del saker om man inte behöver använda perl.

mvh,
Lage
Användarvisningsbild
CirruZZ
Master Moderator
Inlägg: 1621
Blev medlem: 13 feb 2008, 16:46
Ort: Ystad
Kontakt:

Re: HOWTO: RRDtool på Ubuntu (installera, logga, rita graf)

Inlägg av CirruZZ » 18 apr 2010, 12:57

Vist funkar det, inga som helst problem.

Perl eller BASH, ja det är mer tycke eller smak. Själv tycker jag det är enklare att använda Perl eller PHP för att det är mer "hög fungerande" script språk. BASH funkar ju det med men kräver lite mer kunskap. Fördelen med att använda Perl för script som skall generera grafer är att man då enklare kan koda lite mer automatik kring graferna, lättare kunna återanvända graferna med hjälp av funktioner och sen bara ändra tidsintervallet tex.

Smaken är som baken... :wink:
Projekt tråd | Blogg | Hemautomation
Rapporterar för : Ystad & Duved
Skriv svar