Sida 5 av 16

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

Postat: 04 jan 2009, 18:06
av CirruZZ
Ang den "hackade" grafen! Jag upptäckte precis en liten miss i mitt upplägg. :roll:

Vid skapandet av RRD databasen så sätts --step 150 vilket motsvarar 2,5 min. Det innebär att den räknar med att bli "matad" med info i den intervallen.
Senare sätter vi DS:outsidetemp:GAUGE:300:-50:60 där 300 är heartbeat, och det motsvarar 5 min.
Missen är att cron är satt till att köra var 5:e minut vilket är PRECIS på gränsen, där av att det blir hackat!

Enklast är att ändra cron till att köra var 2,5'e minut.

Kod: Markera allt

*/2.5 * * * *           /home/anders/bin/get_temp.sh
*/2.5 * * * *           export LANG=sv_SE.utf8 && /home/anders/bin/graph_temp.pl
Alternativt är att ändra RRD filen med hjälp av rrdresize men det är en helt egen fråga! :wink:

(Jag uppdaterar guiden!)

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

Postat: 04 jan 2009, 18:07
av CirruZZ
Troy McClure skrev:...
Jag lekte mig fram, hade ingen aning från början.
Det är så man lär sig! :D

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

Postat: 04 jan 2009, 18:24
av HUSKii
TACKAR för skriptet!!

Okej, så med andra ord kör du 2 get_temp.sh i crontab med?
Eller du har fixat det skriptet så att du hämtar data från båda givarna i det skriptet?

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

Postat: 04 jan 2009, 18:55
av Troy McClure
HUSKii skrev:TACKAR för skriptet!!

Okej, så med andra ord kör du 2 get_temp.sh i crontab med?
Eller du har fixat det skriptet så att du hämtar data från båda givarna i det skriptet?
Problemet är att givarna sitter på olika datorer, därav en egen fullösning. get_temp.sh hämtar dels från givaren på den datorn, dels ett värde från en temp.txt i den andra datorns www-mapp.

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

Postat: 05 jan 2009, 01:55
av HUSKii
Skulle man kunna få ta ett kik på det skriptet med?

För isåfall är det ju sen bara att köra flera graph_temp.pl för att få ut grafer på andra givare om jag inte har fattat det fel.

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

Postat: 05 jan 2009, 12:12
av Troy McClure
HUSKii skrev:Skulle man kunna få ta ett kik på det skriptet med?

För isåfall är det ju sen bara att köra flera graph_temp.pl för att få ut grafer på andra givare om jag inte har fattat det fel.
Du borde börja leka med de befintliga scripten. Har du två givare är det bara att göra "same procedure" för dessa liksom. Mina fullösningar kommer inte hjälpa, snarare stjälpa, ifall du inte sitter på exakt samma miljöer med servrar, webbhotell och annat. Det är en oerhörd omväg för det du vill göra.

Men här kommer ett litet förslag på hur du uppdaterar tre rrd-filer från tre givare. Rakt ut ur huvudet bara, kanske inte funkar.

Kod: Markera allt

#!/bin/bash

OutsideTempSensor="xxxxxxxxxxxxxx"
IndoorTempSensor="yyyyyyyyyyyyyy"
AquaTempSensor="zzzzzzzzzzzzzzzz"
RRDDataDirectory="/home/huskii/rrddata/"
RRDDataFileOut="outside_temp.rrd"
RRDDataFileIn="indoor_temp.rrd"
RRDDataFileAqua="aqua_temp.rrd"

# Get temps
OutsideTemp=`cat /mnt/1wire/$OutsideTempSensor/temperature|sed -e s/" "//g|awk '{$1=$1 + 0.005;printf "%.2f", $1}'`
sleep 2;
IndoorTemp=`cat /mnt/1wire/$IndoorTempSensor/temperature|sed -e s/" "//g|awk '{$1=$1 + 0.005;printf "%.2f", $1}'`
sleep 2;
AquaTemp=`cat /mnt/1wire/$AquaTempSensor/temperature|sed -e s/" "//g|awk '{$1=$1 + 0.005;printf "%.2f", $1}'`

#Update RRD database
rrdtool update $RRDDataDirectory$RRDDataFileOut N:$OutsideTemp
sleep 5;
rrdtool update $RRDDataDirectory$RRDDataFileIn N:$IndoorTemp
sleep 5;
rrdtool update $RRDDataDirectory$RRDDataFileAqua N:$AquaTemp
#echo $OutsideTemp
#echo $AquaTemp
Sleep-grejerna är med bara för att man inte ska få noll-värden ifall någon läsning inte är färdig.

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

Postat: 05 jan 2009, 15:43
av HUSKii
Okej, jag kunde inte tänka mej att det skulle vara så "enkelt" som att bara lägga till fler rader så, ska testa det skriptet sen.
Tack så mycket iaf.

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

Postat: 05 jan 2009, 16:30
av Troy McClure
HUSKii skrev:Okej, jag kunde inte tänka mej att det skulle vara så "enkelt" som att bara lägga till fler rader så, ska testa det skriptet sen.
Tack så mycket iaf.
Du måste givetvis också skapa dessa rrd-filer. Men det har du ju redan gjort en gång, så det är bara att tillverka fler.

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

Postat: 05 jan 2009, 16:40
av HUSKii
Jo så långt hänger jag med.
Det är ju bara att ändra lite i create_rrd.sh för varje databas och sen köra den, 1gång för varje givare.

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

Postat: 05 jan 2009, 16:45
av Troy McClure
HUSKii skrev:Jo så långt hänger jag med.
Det är ju bara att ändra lite i create_rrd.sh för varje databas och sen köra den, 1gång för varje givare.
Precis! Tror du börjar lämna stadiet då du ser all programmering som hokus pokus, och inträder i stadiet då du börjar fatta hur och att saker faktiskt är logiska och hänger ihop! :wink:

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

Postat: 05 jan 2009, 16:58
av HUSKii
Det jag hoppas lyckas med till slut är något i stil med CirruZZ hemsida,
dvs en sida som visar en 24 timmars graf för varje givare.

När man sen klickar på t.ex grafen för ute temperature,
så ska man komma till en sida där man kan se grafer över 24 timmar, 7dagar och en graf över månaden.

Får se hur långt jag lyckas. :)

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

Postat: 06 jan 2009, 03:28
av HUSKii
Troy McClure skrev: ...
Men här kommer ett litet förslag på hur du uppdaterar tre rrd-filer från tre givare. Rakt ut ur huvudet bara, kanske inte funkar.
...
Jag provade det skriptet, it works like a charm. Lade till en givare till, så nu får jag 24 timmars grafer på ute temp, inne temp, akvarie temp och tempen inne i den tunna klienten. :D

Tack vare att detta forumet finns, med så trevliga och hjälpsamma medlemmar har jag också lyckats att få fina temperaturgrafer.
Nu saknas som sagt bara långtids grafer. Men det kommer nog snart, får vi hoppas iaf. :)

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

Postat: 06 jan 2009, 04:50
av Dowser
För att få långtids-grafer, eller kortare tid för den del, är det bara att labba med värdena i graf-scriptet.
Men det kan ju vänta någon dag så att du har lite historisk data att arbeta med. :)

Men insammlings-scripten behöver altså inte förändras, utan de är klara och skall bara tuffa på.

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

Postat: 06 jan 2009, 11:48
av Troy McClure
HUSKii skrev:Tack vare att detta forumet finns, med så trevliga och hjälpsamma medlemmar har jag också lyckats att få fina temperaturgrafer.
Nu saknas som sagt bara långtids grafer. Men det kommer nog snart, får vi hoppas iaf. :)
Här är mitt script för en veckas ute- och innetemp. Bara att ändra värdet på raden "my $start_time = $cur_time - 604800;" för att få andra intervall.

Kod: Markera allt

#!/usr/bin/perl

sleep 25;

use RRDs;

my $cur_time = time();
my $start_time = $cur_time - 604800;     # set end time to 7*24 hours ago

RRDs::graph "/var/www/graph_temp_w.png",
         "--start= $start_time",
         "--end= $cur_time",
         "--title= Temp ute/inne",
         "--height= 300",
         "--width= 500",
         "--vertical-label= °C",
         "DEF:OutsideTemp=/root/rrddata/outside_temp.rrd:outsidetemp:AVERAGE",
         "DEF:IndoorTemp=/root/rrddata/indoor_temp.rrd:outsidetemp:AVERAGE",
         "COMMENT:\t\t\t\tNu     Medel    Max    Min\\n",
         "HRULE:0#FF00FF",
         "LINE2:OutsideTemp#0000FF:Ute\t\t\t",
         "GPRINT:OutsideTemp:LAST:%6.1lf",
         "GPRINT:OutsideTemp:AVERAGE:%6.1lf",
         "GPRINT:OutsideTemp:MAX:%6.1lf",
         "GPRINT:OutsideTemp:MIN:%6.1lf\\n",
         "HRULE:18#FFFF00",
         "LINE2:IndoorTemp#00FF00:Inne\t\t",
         "GPRINT:IndoorTemp:LAST:%6.1lf",
         "GPRINT:IndoorTemp:AVERAGE:%6.1lf",
         "GPRINT:IndoorTemp:MAX:%6.1lf",
         "GPRINT:IndoorTemp:MIN:%6.1lf\\n";

my $err=RRDs::error;
if ($err) {print "problem generating the graph: $err\n";}

print "Done!\n"

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

Postat: 10 feb 2009, 22:03
av swedtap
Hej, jag har ett litet problem med min rrd-fil.

När jag kör "rrdtool fetch outside_temp.rrd AVERAGE -s -1h" så får jag bara upp en massa rader som ser ut så här:
1234294350: inf
1234294500: inf
1234294650: inf
1234294800: inf
osv....
Om jag skriver in tex "rrdtool update outside_temp.rrd N:-3" verkar det som filen uppdateras om man kollar på datumet men det står i alla fall "1234294...: inf" på alla rader. Får inte upp en enda rad med temperatur.

Vad är det jag har missat? Har följt den här guiden och även flera andra inklusive den på rrdtools tutorials men det funkar inte. Blir snart tokig på det här!

/R