Avatar billede Swift Praktikant
16. september 2003 - 22:31 Der er 1 løsning

RRDtool hvordan laves graf over 'RATE OF CHANGE'

Jeg opsamler 4 forskellige ting i en RRD database.
En af disse ting er et tal der "normalt" stiger hele tiden. En måler for et antal posteringer.
I RRD databasen ligger tallet som GAUGE.

Jeg vil rigtig gerne have lavet noget kode der kan analysere et udsnit af RRD databasen - og vise en graf over 'RATE OF CHANGE' dvs. udsvinget i antal nye posteringer.

Jeg har lidt kørende kode klar i CGI der kalder RRDs:graph
Det kan lave disse to grafer:
http://www.swiftnet.dk/rrdtool_thing.gif
Den øverste viser de aktuelle tal
Den nederste viser en dårlig 'RATE OF CHANGE' graf.
Men lige så snart jeg begynder at hoppe (fx tilbage i tiden) så bliver den nederste graf helt hullet og ubrugelig.

Kan man ikke optimere koden - så der altid kan laves en PÆN 'RATE OF CHANGE' graf ??

Her er lidt af det perl kode jeg benytter:
(PS: den er meget grim)
-----------------------------------------------------------
$optionList[$optionIndex++] = "DEF:WUCompleted=".$rrdfile.":WUCompleted:MAX";

$windowSize = 10;
my $configLine = "";

for( my $i = 0; $i < $windowSize; $i++ )
{
    if( $i == 0 )
    {
        $configLine = "CDEF:prev1";
        $configLine .= "=PREV(WUCompleted)";
    }
    else
    {
        $configLine = "CDEF:prev";
        $configLine .= $i+1;
        $configLine .= "=PREV(prev";
        $configLine .= $i;
        $configLine .= ")";
    }
    $optionList[$optionIndex++] = $configLine;
}

$configLine = "CDEF:max=";
for( my $i = 0; $i < $windowSize; $i++ )
{
    if( $i == 0 )
    {
        $configLine .= "prev";
        $configLine .= $i+1;
    }
    else
    {
        $configLine .= ",prev";
        $configLine .= $i+1;
    }
}

for( my $i = 0; $i < $windowSize - 1; $i++ )
{
    $configLine .= ",MAX";   
}

    $configLine .= ",prev1,-";   

$optionList[$optionIndex++] = $configLine;
$optionList[$optionIndex++] = "LINE2:max#880000:max";
-----------------------------------------------------------

Er der nogle gode ideer?
Avatar billede Swift Praktikant
20. november 2003 - 13:07 #1
Der er ikke kommet nogle brugbare svar.
Derfor trækkes spørgsmålet tilbage.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
I dag 10:21 Ny printer, men hvilken Af mort1 i Printere
I går 19:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging